Algorithmic Trading Model for Simple Moving Average Crossover Grid Search

Task 1. Prepare Environment

In [1]:
import os
import sys
import numpy as np
import pandas as pd
import requests
import json
import matplotlib.pyplot as plt
from datetime import datetime, timedelta
In [2]:
stock_symbol = 'BKNG'
initial_capital = 0

# Specify the parameters for the trading strategy
fast_ma_min = 5
fast_ma_max = 20
slow_ma_min = 10
slow_ma_max = 50
ma_increment = 5
min_ma_gap = 5

model_start_date = datetime(2019, 1, 1)
print("Starting date for the model:", model_start_date)
stock_start_date = model_start_date - timedelta(days=int(slow_ma_max*1.5)) # Need more pricing data to calculate moving averages

model_end_date = datetime.now()
# model_end_date = datetime(2020, 6, 30)
print("Ending date for the model:", model_end_date)
Starting date for the model: 2019-01-01 00:00:00
Ending date for the model: 2020-07-01 22:43:58.983854
In [3]:
# Begin the timer for the script processing
startTimeScript = datetime.now()

# Set up the verbose flag to print detailed messages for debugging (setting True will activate!)
verbose = True

# Set up the sendNotification flag to send progress emails (setting True will send emails!)
notifyStatus = False

# Set up the parent directory location for loading the dotenv files
useColab = False
if useColab:
    # Mount Google Drive locally for storing files
    from dotenv import load_dotenv
    from google.colab import drive
    drive.mount('/content/gdrive')
    gdrivePrefix = '/content/gdrive/My Drive/Colab_Downloads/'
    env_path = '/content/gdrive/My Drive/Colab Notebooks/'
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Set up the dotenv file for retrieving environment variables
useLocalPC = False
if useLocalPC:
    from dotenv import load_dotenv
    env_path = "/Users/david/PycharmProjects/"
    dotenv_path = env_path + "python_script.env"
    load_dotenv(dotenv_path=dotenv_path)

# Configure the plotting style
plt.style.use('seaborn')

# Set Pandas options
pd.set_option("display.max_rows", None)
pd.set_option("display.max_columns", None)
# pd.set_option("display.width", 140)

Task 2. Acquire and Pre-Process Data

In [4]:
# Check and see whether the API key is available
quandl_key = os.environ.get('QUANDL_API')
if quandl_key is None: sys.exit("API key for Quandl not available. Script Processing Aborted!!!")
In [5]:
start_date_string = stock_start_date.strftime('%Y-%m-%d')
end_date_string = model_end_date.strftime('%Y-%m-%d')

quandl_url = "https://www.quandl.com/api/v3/datatables/SHARADAR/SEP.json?date.gte=%s&date.lte=%s&ticker=%s&api_key=%s" % (start_date_string, end_date_string, stock_symbol, quandl_key)
In [6]:
response = requests.get(quandl_url)
quandl_dict = json.loads(response.text)
stock_quandl = pd.DataFrame(quandl_dict['datatable']['data'])
print(len(stock_quandl), 'data points retrieved from the API call.')
428 data points retrieved from the API call.
In [7]:
stock_quandl.columns = ['ticker', 'date', 'open', 'high', 'low', 'close', 'volume', 'dividend', 'closeunadj', 'lastupdated']
# stock_quandl.set_index('date', inplace=True)
stock_quandl.index = pd.to_datetime(stock_quandl.date)
stock_quandl = stock_quandl.sort_index(ascending = True)
stock_quandl.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 428 entries, 2018-10-18 to 2020-07-01
Data columns (total 10 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   ticker       428 non-null    object 
 1   date         428 non-null    object 
 2   open         428 non-null    float64
 3   high         428 non-null    float64
 4   low          428 non-null    float64
 5   close        428 non-null    float64
 6   volume       428 non-null    float64
 7   dividend     428 non-null    float64
 8   closeunadj   428 non-null    float64
 9   lastupdated  428 non-null    object 
dtypes: float64(7), object(3)
memory usage: 36.8+ KB
In [8]:
stock_quandl.head()
Out[8]:
ticker date open high low close volume dividend closeunadj lastupdated
date
2018-10-18 BKNG 2018-10-18 1853.11 1859.00 1808.09 1811.71 351828.0 0.0 1811.71 2020-05-01
2018-10-19 BKNG 2018-10-19 1817.29 1836.02 1796.00 1805.74 262100.0 0.0 1805.74 2020-05-01
2018-10-22 BKNG 2018-10-22 1810.88 1851.12 1807.37 1827.29 269238.0 0.0 1827.29 2020-05-01
2018-10-23 BKNG 2018-10-23 1787.04 1841.52 1785.67 1830.00 402802.0 0.0 1830.00 2018-10-23
2018-10-24 BKNG 2018-10-24 1828.21 1847.21 1745.63 1753.58 533508.0 0.0 1753.58 2020-05-01
In [9]:
stock_quandl.tail()
Out[9]:
ticker date open high low close volume dividend closeunadj lastupdated
date
2020-06-25 BKNG 2020-06-25 1585.81 1623.97 1561.72 1615.39 498591.0 0.0 1615.39 2020-06-25
2020-06-26 BKNG 2020-06-26 1597.30 1611.71 1532.83 1541.25 601775.0 0.0 1541.25 2020-06-26
2020-06-29 BKNG 2020-06-29 1567.77 1595.30 1540.48 1593.22 358850.0 0.0 1593.22 2020-06-29
2020-06-30 BKNG 2020-06-30 1583.90 1603.24 1566.42 1592.34 291864.0 0.0 1592.34 2020-06-30
2020-07-01 BKNG 2020-07-01 1606.05 1670.00 1601.14 1658.79 537580.0 0.0 1658.79 2020-07-01
In [10]:
title_string = 'Quandl Historical Stock Information for ' + stock_symbol
stock_quandl['close'].plot(figsize=(16,9), title=title_string)
plt.show()

Task 3. Develop Strategy and Train Model

3.a) Set up the Dataframe for the Trading Model

In [11]:
# Set up the standard column name for modeling
model_template = stock_quandl.loc[:, ['open','close']]
model_template.rename(columns={'open': 'open_price', 'close': 'close_price'}, inplace=True)
if verbose: model_template.info(verbose=True)
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 428 entries, 2018-10-18 to 2020-07-01
Data columns (total 2 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   open_price   428 non-null    float64
 1   close_price  428 non-null    float64
dtypes: float64(2)
memory usage: 10.0 KB

3.b) Set up the Analysis Table with Indicators

In [12]:
def trading_ma_crossover(model):
    waitfor_first_entry = True
    for x in range(len(model)):
        if model['ma_change'].iloc[x] > 0:
            model['trade_signal'].iloc[x] = 1  # trade_signal = 1 means we should take a long position
        else:
            model['trade_signal'].iloc[x] = 0  # trade_signal = 0 means we should take a flat position
        if x != 0:
            model['signal_change'].iloc[x] = model['trade_signal'].iloc[x] - model['trade_signal'].iloc[x-1]
            if waitfor_first_entry and (model['signal_change'].iloc[x-1] == 1):
                model['entry_exit'].iloc[x] = model['signal_change'].iloc[x-1]
                waitfor_first_entry = False
            elif (not waitfor_first_entry) and (model['signal_change'].iloc[x-1] != 0):
                model['entry_exit'].iloc[x] = model['signal_change'].iloc[x-1]
In [13]:
model_collection = {}
serial_number = 1

for slow_ma in range(slow_ma_min, slow_ma_max+1, ma_increment):
    for fast_ma in range(fast_ma_min, fast_ma_max+1, ma_increment):
        if (slow_ma - fast_ma) < min_ma_gap: break
        print('Processing model with slow_ma of', slow_ma, 'and fast_ma of', fast_ma)
        model_name = 'SMA_' + str(serial_number).zfill(3) + '_SlowMA_' + str(slow_ma).zfill(2) + '_FastMA_' + str(fast_ma).zfill(2)
        serial_number = serial_number + 1
        trading_model = model_template.copy()
        trading_model['fast_ma'] = trading_model['close_price'].rolling(fast_ma).mean()
        trading_model['slow_ma'] = trading_model['close_price'].rolling(slow_ma).mean()
        trading_model['ma_change'] = trading_model['fast_ma'] - trading_model['slow_ma']
        trading_model['trade_signal'] = np.zeros(len(trading_model))
        trading_model['signal_change'] = np.zeros(len(trading_model))
        trading_model['entry_exit'] = np.zeros(len(trading_model))
        trading_model = trading_model[model_start_date:model_end_date]
        trading_ma_crossover(trading_model)
        model_collection[model_name] = trading_model.copy()
        print('Model', model_name, 'added to the trading model collection.')
Processing model with slow_ma of 10 and fast_ma of 5
Model SMA_001_SlowMA_10_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 15 and fast_ma of 5
Model SMA_002_SlowMA_15_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 15 and fast_ma of 10
Model SMA_003_SlowMA_15_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 5
Model SMA_004_SlowMA_20_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 10
Model SMA_005_SlowMA_20_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 20 and fast_ma of 15
Model SMA_006_SlowMA_20_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 5
Model SMA_007_SlowMA_25_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 10
Model SMA_008_SlowMA_25_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 15
Model SMA_009_SlowMA_25_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 25 and fast_ma of 20
Model SMA_010_SlowMA_25_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 5
Model SMA_011_SlowMA_30_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 10
Model SMA_012_SlowMA_30_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 15
Model SMA_013_SlowMA_30_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 30 and fast_ma of 20
Model SMA_014_SlowMA_30_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 5
Model SMA_015_SlowMA_35_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 10
Model SMA_016_SlowMA_35_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 15
Model SMA_017_SlowMA_35_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 35 and fast_ma of 20
Model SMA_018_SlowMA_35_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 5
Model SMA_019_SlowMA_40_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 10
Model SMA_020_SlowMA_40_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 15
Model SMA_021_SlowMA_40_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 40 and fast_ma of 20
Model SMA_022_SlowMA_40_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 5
Model SMA_023_SlowMA_45_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 10
Model SMA_024_SlowMA_45_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 15
Model SMA_025_SlowMA_45_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 45 and fast_ma of 20
Model SMA_026_SlowMA_45_FastMA_20 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 5
Model SMA_027_SlowMA_50_FastMA_05 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 10
Model SMA_028_SlowMA_50_FastMA_10 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 15
Model SMA_029_SlowMA_50_FastMA_15 added to the trading model collection.
Processing model with slow_ma of 50 and fast_ma of 20
Model SMA_030_SlowMA_50_FastMA_20 added to the trading model collection.
In [14]:
# List the entry/exit points for each model
for key in model_collection:
    print('List the signal change and entry/exit points for', key)
    if verbose: print(model_collection[key][(model_collection[key].signal_change != 0) | (model_collection[key].entry_exit != 0)])
    else: print(model_collection[key][model_collection[key].entry_exit != 0])
    print()
List the signal change and entry/exit points for SMA_001_SlowMA_10_FastMA_05
            open_price  close_price   fast_ma   slow_ma  ma_change  \
date                                                                 
2019-01-09     1642.35      1649.49  1685.780  1700.990    -15.210   
2019-01-17     1681.73      1724.51  1692.432  1690.527      1.905   
2019-01-18     1747.02      1760.26  1711.306  1694.798     16.508   
2019-02-26     1885.83      1915.73  1909.752  1913.542     -3.790   
2019-02-27     1906.00      1906.00  1905.718  1914.613     -8.895   
2019-03-13     1740.44      1760.71  1729.488  1726.393      3.095   
2019-03-14     1768.83      1743.88  1733.262  1731.077      2.185   
2019-03-27     1768.98      1752.11  1753.864  1756.016     -2.152   
2019-03-28     1759.99      1728.89  1744.770  1754.517     -9.747   
2019-04-03     1778.47      1774.93  1754.302  1754.083      0.219   
2019-04-04     1775.31      1780.60  1764.644  1754.707      9.937   
2019-05-02     1824.66      1808.00  1847.366  1854.658     -7.292   
2019-05-03     1816.17      1824.07  1838.580  1852.634    -14.054   
2019-05-16     1790.00      1803.31  1798.704  1789.076      9.628   
2019-05-17     1786.37      1787.29  1790.192  1785.398      4.794   
2019-05-22     1757.35      1745.02  1772.008  1778.628     -6.620   
2019-05-23     1746.95      1716.93  1754.732  1776.718    -21.986   
2019-06-06     1766.01      1754.86  1714.714  1704.376     10.338   
2019-06-07     1765.25      1778.29  1739.128  1710.512     28.616   
2019-07-11     1875.45      1874.17  1884.388  1886.788     -2.400   
2019-07-12     1878.02      1882.48  1875.934  1890.519    -14.585   
2019-07-19     1896.03      1882.09  1881.310  1878.622      2.688   
2019-07-22     1883.65      1893.70  1883.668  1880.416      3.252   
2019-08-02     1874.11      1846.08  1889.738  1905.487    -15.749   
2019-08-05     1819.98      1788.60  1863.548  1894.977    -31.429   
2019-08-12     1900.44      1916.89  1876.734  1870.141      6.593   
2019-08-13     1907.67      1943.19  1908.068  1872.801     35.267   
2019-08-28     1911.80      1942.00  1925.988  1929.068     -3.080   
2019-08-29     1966.43      1957.14  1926.922  1934.315     -7.393   
2019-08-30     1971.80      1966.41  1940.470  1938.737      1.733   
2019-09-03     1956.56      1941.78  1945.464  1938.542      6.922   
2019-09-23     2016.00      2009.41  2047.072  2048.254     -1.182   
2019-09-24     2012.82      1990.64  2029.712  2045.442    -15.730   
2019-10-15     1992.21      2016.39  1977.712  1966.440     11.272   
2019-10-16     2016.80      2027.63  1994.572  1975.059     19.513   
2019-11-04     2042.00      2007.68  2036.164  2039.283     -3.119   
2019-11-05     2008.99      2025.43  2032.690  2039.521     -6.831   
2019-11-25     1885.09      1897.54  1869.100  1863.283      5.817   
2019-11-26     1899.70      1887.46  1877.532  1864.445     13.087   
2020-01-17     2060.00      2054.69  2065.316  2067.612     -2.296   
2020-01-21     2006.00      1990.57  2047.330  2061.929    -14.599   
2020-02-07     1950.23      1909.59  1902.664  1893.625      9.039   
2020-02-10     1901.69      1886.64  1912.186  1891.400     20.786   
2020-02-24     1830.93      1792.54  1927.388  1934.414     -7.026   
2020-02-25     1803.00      1726.58  1877.448  1918.408    -40.960   
2020-03-27     1344.87      1255.15  1287.742  1269.930     17.812   
2020-03-30     1261.27      1308.23  1318.940  1271.786     47.154   
2020-04-03     1244.18      1230.68  1283.172  1285.457     -2.285   
2020-04-06     1303.28      1356.68  1292.862  1305.901    -13.039   
2020-04-08     1382.65      1372.06  1319.158  1318.212      0.946   
2020-04-09     1424.76      1420.64  1351.286  1319.676     31.610   
2020-04-22     1365.01      1355.00  1397.424  1407.486    -10.062   
2020-04-23     1354.05      1360.00  1387.944  1406.280    -18.336   
2020-04-29     1487.83      1520.53  1417.122  1407.273      9.849   
2020-04-30     1514.53      1480.57  1441.236  1414.590     26.646   
2020-05-07     1392.26      1443.91  1415.622  1428.429    -12.807   
2020-05-08     1416.69      1430.83  1412.030  1435.235    -23.205   
2020-05-18     1430.00      1557.43  1415.248  1413.409      1.839   
2020-05-19     1556.29      1547.56  1447.576  1428.845     18.731   
2020-06-12     1653.57      1623.92  1712.896  1717.146     -4.250   
2020-06-15     1567.66      1650.67  1674.848  1715.140    -40.292   
2020-06-24     1660.71      1610.33  1635.242  1635.115      0.127   
2020-06-25     1585.81      1615.39  1632.650  1637.817     -5.167   
2020-06-26     1597.30      1541.25  1615.518  1629.550    -14.032   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-09           0.0           -1.0         0.0  
2019-01-17           1.0            1.0         0.0  
2019-01-18           1.0            0.0         1.0  
2019-02-26           0.0           -1.0         0.0  
2019-02-27           0.0            0.0        -1.0  
2019-03-13           1.0            1.0         0.0  
2019-03-14           1.0            0.0         1.0  
2019-03-27           0.0           -1.0         0.0  
2019-03-28           0.0            0.0        -1.0  
2019-04-03           1.0            1.0         0.0  
2019-04-04           1.0            0.0         1.0  
2019-05-02           0.0           -1.0         0.0  
2019-05-03           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           1.0            0.0         1.0  
2019-05-22           0.0           -1.0         0.0  
2019-05-23           0.0            0.0        -1.0  
2019-06-06           1.0            1.0         0.0  
2019-06-07           1.0            0.0         1.0  
2019-07-11           0.0           -1.0         0.0  
2019-07-12           0.0            0.0        -1.0  
2019-07-19           1.0            1.0         0.0  
2019-07-22           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-08-28           0.0           -1.0         0.0  
2019-08-29           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-09-23           0.0           -1.0         0.0  
2019-09-24           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-04           0.0           -1.0         0.0  
2019-11-05           0.0            0.0        -1.0  
2019-11-25           1.0            1.0         0.0  
2019-11-26           1.0            0.0         1.0  
2020-01-17           0.0           -1.0         0.0  
2020-01-21           0.0            0.0        -1.0  
2020-02-07           1.0            1.0         0.0  
2020-02-10           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-03-27           1.0            1.0         0.0  
2020-03-30           1.0            0.0         1.0  
2020-04-03           0.0           -1.0         0.0  
2020-04-06           0.0            0.0        -1.0  
2020-04-08           1.0            1.0         0.0  
2020-04-09           1.0            0.0         1.0  
2020-04-22           0.0           -1.0         0.0  
2020-04-23           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-05-07           0.0           -1.0         0.0  
2020-05-08           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-12           0.0           -1.0         0.0  
2020-06-15           0.0            0.0        -1.0  
2020-06-24           1.0            1.0         0.0  
2020-06-25           0.0           -1.0         1.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_002_SlowMA_15_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-18     1747.02      1760.26  1711.306  1699.240000  12.066000   
2019-01-22     1743.18      1708.98  1714.526  1698.783333  15.742667   
2019-02-28     1754.00      1697.04  1863.864  1890.107333 -26.243333   
2019-03-01     1708.20      1714.08  1824.576  1879.242000 -54.666000   
2019-03-19     1751.05      1764.03  1755.424  1745.756000   9.668000   
2019-03-20     1766.78      1774.43  1758.168  1736.984667  21.183333   
2019-03-28     1759.99      1728.89  1744.770  1747.432000  -2.662000   
2019-03-29     1736.60      1744.91  1749.434  1749.371333   0.062667   
2019-04-01     1755.08      1759.23  1750.802  1752.660000  -1.858000   
2019-04-02     1766.03      1763.55  1749.738  1754.496667  -4.758667   
2019-04-04     1775.31      1780.60  1764.644  1757.892667   6.751333   
2019-04-05     1788.03      1769.45  1769.552  1759.044667  10.507333   
2019-05-02     1824.66      1808.00  1847.366  1848.397333  -1.031333   
2019-05-03     1816.17      1824.07  1838.580  1848.762667 -10.182667   
2019-06-07     1765.25      1778.29  1739.128  1725.252000  13.876000   
2019-06-10     1782.57      1781.12  1765.260  1724.840667  40.419333   
2019-07-12     1878.02      1882.48  1875.934  1878.457333  -2.523333   
2019-07-15     1881.89      1881.91  1877.164  1878.584667  -1.420667   
2019-07-24     1896.26      1919.25  1896.240  1889.588000   6.652000   
2019-07-25     1911.99      1926.13  1904.284  1890.020000  14.264000   
2019-08-02     1874.11      1846.08  1889.738  1897.428000  -7.690000   
2019-08-05     1819.98      1788.60  1863.548  1891.207333 -27.659333   
2019-08-13     1907.67      1943.19  1908.068  1891.758667  16.309333   
2019-08-14     1908.56      1891.19  1921.994  1889.888000  32.106000   
2019-08-28     1911.80      1942.00  1925.988  1926.710000  -0.722000   
2019-08-29     1966.43      1957.14  1926.922  1927.785333  -0.863333   
2019-08-30     1971.80      1966.41  1940.470  1931.033333   9.436667   
2019-09-03     1956.56      1941.78  1945.464  1932.692667  12.771333   
2019-09-25     1991.65      1993.53  2016.744  2028.068667 -11.324667   
2019-09-26     1994.08      1978.45  2000.720  2027.002667 -26.282667   
2019-10-15     1992.21      2016.39  1977.712  1968.084667   9.627333   
2019-10-16     2016.80      2027.63  1994.572  1970.358000  24.214000   
2019-11-05     2008.99      2025.43  2032.690  2034.012667  -1.322667   
2019-11-06     2018.56      2012.09  2025.198  2032.976667  -7.778667   
2019-11-26     1899.70      1887.46  1877.532  1877.169333   0.362667   
2019-11-27     1893.00      1906.45  1888.458  1870.126667  18.331333   
2020-01-17     2060.00      2054.69  2065.316  2066.421333  -1.105333   
2020-01-21     2006.00      1990.57  2047.330  2060.956667 -13.626667   
2020-02-11     1894.48      1909.30  1921.144  1912.572667   8.571333   
2020-02-12     1923.95      1960.36  1925.358  1909.914000  15.444000   
2020-02-25     1803.00      1726.58  1877.448  1916.334000 -38.886000   
2020-02-26     1731.22      1678.20  1819.390  1903.913333 -84.523333   
2020-03-30     1261.27      1308.23  1318.940  1314.050667   4.889333   
2020-03-31     1303.01      1345.32  1336.110  1299.805333  36.304667   
2020-04-24     1372.39      1362.77  1366.324  1384.090667 -17.766667   
2020-04-27     1374.93      1402.99  1364.596  1395.578000 -30.982000   
2020-04-29     1487.83      1520.53  1417.122  1410.698000   6.424000   
2020-04-30     1514.53      1480.57  1441.236  1417.932000  23.304000   
2020-05-08     1416.69      1430.83  1412.030  1412.264667  -0.234667   
2020-05-11     1427.02      1411.00  1411.570  1412.222667  -0.652667   
2020-05-19     1556.29      1547.56  1447.576  1436.322667  11.253333   
2020-05-20     1578.52      1599.15  1494.192  1441.564000  52.628000   
2020-06-15     1567.66      1650.67  1674.848  1703.745333 -28.897333   
2020-06-16     1716.32      1673.74  1654.002  1698.867333 -44.865333   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-03-19           1.0            1.0         0.0  
2019-03-20           1.0            0.0         1.0  
2019-03-28           0.0           -1.0         0.0  
2019-03-29           1.0            1.0        -1.0  
2019-04-01           0.0           -1.0         1.0  
2019-04-02           0.0            0.0        -1.0  
2019-04-04           1.0            1.0         0.0  
2019-04-05           1.0            0.0         1.0  
2019-05-02           0.0           -1.0         0.0  
2019-05-03           0.0            0.0        -1.0  
2019-06-07           1.0            1.0         0.0  
2019-06-10           1.0            0.0         1.0  
2019-07-12           0.0           -1.0         0.0  
2019-07-15           0.0            0.0        -1.0  
2019-07-24           1.0            1.0         0.0  
2019-07-25           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-08-28           0.0           -1.0         0.0  
2019-08-29           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-09-25           0.0           -1.0         0.0  
2019-09-26           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-05           0.0           -1.0         0.0  
2019-11-06           0.0            0.0        -1.0  
2019-11-26           1.0            1.0         0.0  
2019-11-27           1.0            0.0         1.0  
2020-01-17           0.0           -1.0         0.0  
2020-01-21           0.0            0.0        -1.0  
2020-02-11           1.0            1.0         0.0  
2020-02-12           1.0            0.0         1.0  
2020-02-25           0.0           -1.0         0.0  
2020-02-26           0.0            0.0        -1.0  
2020-03-30           1.0            1.0         0.0  
2020-03-31           1.0            0.0         1.0  
2020-04-24           0.0           -1.0         0.0  
2020-04-27           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-05-08           0.0           -1.0         0.0  
2020-05-11           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-15           0.0           -1.0         0.0  
2020-06-16           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_003_SlowMA_15_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-09     1642.35      1649.49  1700.990  1698.090000   2.900000   
2019-01-10     1640.00      1677.33  1698.398  1691.950667   6.447333   
2019-01-15     1695.00      1698.31  1688.501  1690.742667  -2.241667   
2019-01-16     1693.42      1680.57  1684.388  1694.992000 -10.604000   
2019-01-23     1717.25      1744.31  1700.253  1700.242667   0.010333   
2019-01-24     1748.98      1795.67  1714.871  1705.174000   9.697000   
2019-03-01     1708.20      1714.08  1873.495  1879.242000  -5.747000   
2019-03-04     1723.66      1707.82  1850.920  1868.357333 -17.437333   
2019-03-20     1766.78      1774.43  1743.828  1736.984667   6.843333   
2019-03-21     1765.80      1774.36  1748.763  1742.139333   6.623667   
2019-04-02     1766.03      1763.55  1754.033  1754.496667  -0.463667   
2019-04-03     1778.47      1774.93  1754.083  1755.444667  -1.361667   
2019-04-05     1788.03      1769.45  1759.493  1759.044667   0.448333   
2019-04-08     1767.92      1788.72  1763.126  1761.204000   1.922000   
2019-05-07     1781.45      1785.00  1837.995  1842.510000  -4.515000   
2019-05-08     1765.01      1751.63  1826.430  1836.505333 -10.075333   
2019-06-11     1799.50      1803.63  1729.559  1728.267333   1.291667   
2019-06-12     1804.17      1798.90  1740.857  1730.048000  10.809000   
2019-07-18     1861.83      1885.91  1882.888  1884.988000  -2.100000   
2019-07-19     1896.03      1882.09  1878.622  1887.449333  -8.827333   
2019-07-25     1911.99      1926.13  1892.836  1890.020000   2.816000   
2019-07-26     1940.00      1966.85  1901.273  1892.826667   8.446333   
2019-08-06     1799.20      1786.52  1883.604  1884.382000  -0.778000   
2019-08-07     1758.40      1821.56  1873.835  1881.303333  -7.468333   
2019-08-19     1944.87      1943.73  1898.864  1887.092000  11.772000   
2019-08-20     1942.51      1934.40  1913.652  1888.279333  25.372667   
2019-09-27     1969.56      1944.25  2021.518  2025.444000  -3.926000   
2019-09-30     1953.00      1962.61  2010.484  2023.468000 -12.984000   
2019-10-16     2016.80      2027.63  1975.059  1970.358000   4.701000   
2019-10-17     2033.00      2028.53  1981.767  1973.696667   8.070333   
2019-11-07     1942.20      1849.93  2018.125  2021.070000  -2.945000   
2019-11-08     1941.00      1879.19  2000.451  2012.114000 -11.663000   
2019-12-02     1898.21      1884.44  1876.591  1874.083333   2.507667   
2019-12-03     1865.39      1879.98  1880.786  1873.012667   7.773333   
2020-01-22     2004.33      2000.24  2055.148  2057.381333  -2.233333   
2020-01-23     1986.24      1993.20  2048.178  2053.346000  -5.168000   
2020-02-14     1998.44      1990.96  1922.052  1909.563333  12.488667   
2020-02-18     1972.25      1976.28  1935.777  1914.056000  21.721000   
2020-02-26     1731.22      1678.20  1895.298  1903.913333  -8.615333   
2020-02-27     1612.98      1659.85  1865.247  1885.284000 -20.037000   
2020-04-03     1244.18      1230.68  1285.457  1274.344000  11.113000   
2020-04-06     1303.28      1356.68  1305.901  1278.811333  27.089667   
2020-04-28     1434.20      1439.32  1397.681  1401.087333  -3.406333   
2020-04-29     1487.83      1520.53  1407.273  1410.698000  -3.425000   
2020-05-05     1443.25      1393.20  1417.647  1415.546667   2.100333   
2020-05-06     1397.46      1378.91  1420.038  1412.500000   7.538000   
2020-05-13     1379.34      1366.07  1415.250  1415.874000  -0.624000   
2020-05-14     1348.74      1382.51  1405.444  1417.374667 -11.930667   
2020-05-20     1578.52      1599.15  1450.869  1441.564000   9.305000   
2020-05-21     1605.00      1595.68  1466.046  1449.238000  16.808000   
2020-06-19     1654.00      1626.91  1678.239  1692.624667 -14.385667   
2020-06-22     1609.74      1633.52  1657.500  1690.144000 -32.644000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-09           1.0            1.0         0.0  
2019-01-10           1.0            0.0         1.0  
2019-01-15           0.0           -1.0         0.0  
2019-01-16           0.0            0.0        -1.0  
2019-01-23           1.0            1.0         0.0  
2019-01-24           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-03-20           1.0            1.0         0.0  
2019-03-21           1.0            0.0         1.0  
2019-04-02           0.0           -1.0         0.0  
2019-04-03           0.0            0.0        -1.0  
2019-04-05           1.0            1.0         0.0  
2019-04-08           1.0            0.0         1.0  
2019-05-07           0.0           -1.0         0.0  
2019-05-08           0.0            0.0        -1.0  
2019-06-11           1.0            1.0         0.0  
2019-06-12           1.0            0.0         1.0  
2019-07-18           0.0           -1.0         0.0  
2019-07-19           0.0            0.0        -1.0  
2019-07-25           1.0            1.0         0.0  
2019-07-26           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-02           1.0            1.0         0.0  
2019-12-03           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-14           1.0            1.0         0.0  
2020-02-18           1.0            0.0         1.0  
2020-02-26           0.0           -1.0         0.0  
2020-02-27           0.0            0.0        -1.0  
2020-04-03           1.0            1.0         0.0  
2020-04-06           1.0            0.0         1.0  
2020-04-28           0.0           -1.0         0.0  
2020-04-29           0.0            0.0        -1.0  
2020-05-05           1.0            1.0         0.0  
2020-05-06           1.0            0.0         1.0  
2020-05-13           0.0           -1.0         0.0  
2020-05-14           0.0            0.0        -1.0  
2020-05-20           1.0            1.0         0.0  
2020-05-21           1.0            0.0         1.0  
2020-06-19           0.0           -1.0         0.0  
2020-06-22           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_004_SlowMA_20_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-17     1681.73      1724.51  1692.432  1692.0710     0.3610   
2019-01-18     1747.02      1760.26  1711.306  1693.2525    18.0535   
2019-02-28     1754.00      1697.04  1863.864  1884.5780   -20.7140   
2019-03-01     1708.20      1714.08  1824.576  1878.6415   -54.0655   
2019-03-25     1714.01      1752.39  1757.360  1756.2420     1.1180   
2019-03-26     1761.20      1768.87  1758.328  1748.8990     9.4290   
2019-05-06     1798.96      1800.51  1823.418  1836.9865   -13.5685   
2019-05-07     1781.45      1785.00  1809.420  1836.8005   -27.3805   
2019-06-10     1782.57      1781.12  1765.260  1741.1785    24.0815   
2019-06-11     1799.50      1803.63  1776.580  1742.4970    34.0830   
2019-08-02     1874.11      1846.08  1889.738  1892.0545    -2.3165   
2019-08-05     1819.98      1788.60  1863.548  1887.6965   -24.1485   
2019-08-13     1907.67      1943.19  1908.068  1890.3035    17.7645   
2019-08-14     1908.56      1891.19  1921.994  1891.4760    30.5180   
2019-09-26     1994.08      1978.45  2000.720  2011.1800   -10.4600   
2019-09-27     1969.56      1944.25  1983.256  2010.5355   -27.2795   
2019-10-16     2016.80      2027.63  1994.572  1981.9545    12.6175   
2019-10-17     2033.00      2028.53  2007.696  1980.4525    27.2435   
2019-11-07     1942.20      1849.93  1985.430  2017.7265   -32.2965   
2019-11-08     1941.00      1879.19  1954.864  2012.8270   -57.9630   
2019-12-02     1898.21      1884.44  1895.984  1894.2785     1.7055   
2019-12-03     1865.39      1879.98  1892.472  1887.8935     4.5785   
2020-01-21     2006.00      1990.57  2047.330  2057.5285   -10.1985   
2020-01-22     2004.33      2000.24  2033.082  2056.3775   -23.2955   
2020-02-14     1998.44      1990.96  1941.440  1932.2555     9.1845   
2020-02-18     1972.25      1976.28  1959.368  1928.3350    31.0330   
2020-02-25     1803.00      1726.58  1877.448  1904.9040   -27.4560   
2020-02-26     1731.22      1678.20  1819.390  1892.9415   -73.5515   
2020-04-08     1382.65      1372.06  1319.158  1296.1000    23.0580   
2020-04-09     1424.76      1420.64  1351.286  1303.1120    48.1740   
2020-04-27     1374.93      1402.99  1364.596  1367.4765    -2.8805   
2020-04-28     1434.20      1439.32  1384.016  1374.0310     9.9850   
2020-04-29     1487.83      1520.53  1417.122  1382.7915    34.3305   
2020-05-07     1392.26      1443.91  1415.622  1417.3545    -1.7325   
2020-05-08     1416.69      1430.83  1412.030  1417.8640    -5.8340   
2020-05-18     1430.00      1557.43  1415.248  1412.9790     2.2690   
2020-05-19     1556.29      1547.56  1447.576  1423.2460    24.3300   
2020-06-16     1716.32      1673.74  1654.002  1680.1805   -26.1785   
2020-06-17     1677.92      1638.24  1634.988  1684.7145   -49.7265   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-17           1.0            1.0         0.0  
2019-01-18           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-03-25           1.0            1.0         0.0  
2019-03-26           1.0            0.0         1.0  
2019-05-06           0.0           -1.0         0.0  
2019-05-07           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-26           0.0           -1.0         0.0  
2019-09-27           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-02           1.0            1.0         0.0  
2019-12-03           1.0            0.0         1.0  
2020-01-21           0.0           -1.0         0.0  
2020-01-22           0.0            0.0        -1.0  
2020-02-14           1.0            1.0         0.0  
2020-02-18           1.0            0.0         1.0  
2020-02-25           0.0           -1.0         0.0  
2020-02-26           0.0            0.0        -1.0  
2020-04-08           1.0            1.0         0.0  
2020-04-09           1.0            0.0         1.0  
2020-04-27           0.0           -1.0         0.0  
2020-04-28           1.0            1.0        -1.0  
2020-04-29           1.0            0.0         1.0  
2020-05-07           0.0           -1.0         0.0  
2020-05-08           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-16           0.0           -1.0         0.0  
2020-06-17           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_005_SlowMA_20_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-18     1747.02      1760.26  1694.798  1693.2525     1.5455   
2019-01-22     1743.18      1708.98  1694.514  1693.4425     1.0715   
2019-03-01     1708.20      1714.08  1873.495  1878.6415    -5.1465   
2019-03-04     1723.66      1707.82  1850.920  1872.1845   -21.2645   
2019-03-26     1761.20      1768.87  1756.876  1748.8990     7.9770   
2019-03-27     1768.98      1752.11  1756.016  1741.2045    14.8115   
2019-05-08     1765.01      1751.63  1826.430  1834.6585    -8.2285   
2019-05-09     1729.43      1736.03  1813.407  1831.1600   -17.7530   
2019-06-13     1802.05      1809.52  1754.503  1743.7630    10.7400   
2019-06-14     1808.20      1775.50  1766.431  1742.3725    24.0585   
2019-07-19     1896.03      1882.09  1878.622  1879.1705    -0.5485   
2019-07-22     1883.65      1893.70  1880.416  1879.8555     0.5605   
2019-07-23     1898.63      1900.25  1882.654  1881.3275     1.3265   
2019-08-07     1758.40      1821.56  1873.835  1880.7375    -6.9025   
2019-08-08     1900.00      1941.01  1875.323  1884.0795    -8.7565   
2019-08-19     1944.87      1943.73  1898.864  1896.9205     1.9435   
2019-08-20     1942.51      1934.40  1913.652  1898.6280    15.0240   
2019-10-01     1977.00      1978.03  2000.543  2012.1580   -11.6150   
2019-10-02     1969.00      1941.44  1988.850  2011.2905   -22.4405   
2019-10-17     2033.00      2028.53  1981.767  1980.4525     1.3145   
2019-10-18     2030.86      2013.53  1984.800  1979.5505     5.2495   
2019-11-08     1941.00      1879.19  2000.451  2012.8270   -12.3760   
2019-11-11     1869.00      1896.04  1984.350  2008.1915   -23.8415   
2019-12-04     1894.64      1921.53  1888.409  1882.6985     5.7105   
2019-12-05     1929.00      1904.22  1893.649  1877.3050    16.3440   
2020-01-22     2004.33      2000.24  2055.148  2056.3775    -1.2295   
2020-01-23     1986.24      1993.20  2048.178  2054.4325    -6.2545   
2020-02-18     1972.25      1976.28  1935.777  1928.3350     7.4420   
2020-02-19     1982.76      1968.49  1946.175  1927.2310    18.9440   
2020-02-27     1612.98      1659.85  1865.247  1881.2365   -15.9895   
2020-02-28     1643.64      1695.66  1838.819  1872.4150   -33.5960   
2020-04-07     1412.01      1376.37  1317.591  1299.6220    17.9690   
2020-04-08     1382.65      1372.06  1318.212  1296.1000    22.1120   
2020-05-14     1348.74      1382.51  1405.444  1410.0170    -4.5730   
2020-05-15     1377.01      1384.31  1398.996  1405.6890    -6.6930   
2020-05-18     1430.00      1557.43  1413.409  1412.9790     0.4300   
2020-05-19     1556.29      1547.56  1428.845  1423.2460     5.5990   
2020-06-19     1654.00      1626.91  1678.239  1687.7360    -9.4970   
2020-06-22     1609.74      1633.52  1657.500  1687.8470   -30.3470   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-03-26           1.0            1.0         0.0  
2019-03-27           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-07-19           0.0           -1.0         0.0  
2019-07-22           1.0            1.0        -1.0  
2019-07-23           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-01           0.0           -1.0         0.0  
2019-10-02           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-04           1.0            1.0         0.0  
2019-12-05           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-18           1.0            1.0         0.0  
2020-02-19           1.0            0.0         1.0  
2020-02-27           0.0           -1.0         0.0  
2020-02-28           0.0            0.0        -1.0  
2020-04-07           1.0            1.0         0.0  
2020-04-08           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-19           0.0           -1.0         0.0  
2020-06-22           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_006_SlowMA_20_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-16     1693.42      1680.57  1694.992000  1694.3165   0.675500   
2019-01-17     1681.73      1724.51  1696.409333  1692.0710   4.338333   
2019-01-24     1748.98      1795.67  1705.174000  1707.9305  -2.756500   
2019-01-25     1811.99      1802.20  1714.446000  1712.8780   1.568000   
2019-01-28     1787.62      1813.60  1720.849333  1717.6680   3.181333   
2019-03-04     1723.66      1707.82  1868.357333  1872.1845  -3.827167   
2019-03-05     1715.00      1745.93  1860.419333  1866.4315  -6.012167   
2019-03-27     1768.98      1752.11  1747.173333  1741.2045   5.968833   
2019-03-28     1759.99      1728.89  1747.432000  1742.7970   4.635000   
2019-05-09     1729.43      1736.03  1829.588000  1831.1600  -1.572000   
2019-05-10     1825.00      1829.85  1828.624000  1831.7230  -3.099000   
2019-06-17     1776.00      1781.41  1743.114667  1742.0785   1.036167   
2019-06-18     1808.38      1808.99  1751.327333  1744.9165   6.410833   
2019-07-26     1940.00      1966.85  1892.826667  1895.8960  -3.069333   
2019-07-29     1958.78      1919.55  1895.746000  1898.1380  -2.392000   
2019-07-31     1906.33      1886.61  1899.475333  1897.9775   1.497833   
2019-08-01     1885.47      1879.86  1899.854667  1895.9880   3.866667   
2019-08-14     1908.56      1891.19  1889.888000  1891.4760  -1.588000   
2019-08-15     1900.03      1904.67  1888.457333  1892.4140  -3.956667   
2019-08-23     1942.98      1898.67  1901.235333  1898.3610   2.874333   
2019-08-26     1918.24      1916.81  1909.782667  1898.2240  11.558667   
2019-10-03     1936.55      1961.45  2008.174000  2009.6410  -1.467000   
2019-10-04     1970.64      1983.20  2002.794000  2010.4195  -7.625500   
2019-10-21     2022.68      2022.24  1982.290667  1980.1920   2.098667   
2019-10-22     2029.04      2023.05  1985.292000  1981.8125   3.479500   
2019-11-08     1941.00      1879.19  2012.114000  2012.8270  -0.713000   
2019-11-11     1869.00      1896.04  2003.700667  2008.1915  -4.490833   
2019-12-05     1929.00      1904.22  1879.067333  1877.3050   1.762333   
2019-12-06     1923.27      1930.27  1883.382000  1881.3220   2.060000   
2020-01-23     1986.24      1993.20  2053.346000  2054.4325  -1.086500   
2020-01-24     1998.00      1962.96  2045.904667  2050.3805  -4.475833   
2020-02-21     1965.00      1928.72  1926.364667  1922.5405   3.824167   
2020-02-24     1830.93      1792.54  1923.830667  1914.0195   9.811167   
2020-02-28     1643.64      1695.66  1867.601333  1872.4150  -4.813667   
2020-03-02     1709.75      1728.98  1855.560667  1867.3365 -11.775833   
2020-04-09     1424.76      1420.64  1303.850000  1303.1120   0.738000   
2020-04-13     1413.19      1421.01  1320.088667  1303.0960  16.992667   
2020-05-06     1397.46      1378.91  1412.500000  1413.7620  -1.262000   
2020-05-07     1392.26      1443.91  1414.934000  1417.3545  -2.420500   
2020-05-12     1401.09      1385.92  1415.136000  1414.1885   0.947500   
2020-05-13     1379.34      1366.07  1415.874000  1411.2615   4.612500   
2020-06-25     1585.81      1615.39  1675.424667  1678.2565  -2.831833   
2020-06-26     1597.30      1541.25  1657.332000  1673.3480 -16.016000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-16           1.0            1.0         0.0  
2019-01-17           1.0            0.0         1.0  
2019-01-24           0.0           -1.0         0.0  
2019-01-25           1.0            1.0        -1.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-03-27           1.0            1.0         0.0  
2019-03-28           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-06-17           1.0            1.0         0.0  
2019-06-18           1.0            0.0         1.0  
2019-07-26           0.0           -1.0         0.0  
2019-07-29           0.0            0.0        -1.0  
2019-07-31           1.0            1.0         0.0  
2019-08-01           1.0            0.0         1.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-15           0.0            0.0        -1.0  
2019-08-23           1.0            1.0         0.0  
2019-08-26           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-21           1.0            1.0         0.0  
2019-10-22           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-05           1.0            1.0         0.0  
2019-12-06           1.0            0.0         1.0  
2020-01-23           0.0           -1.0         0.0  
2020-01-24           0.0            0.0        -1.0  
2020-02-21           1.0            1.0         0.0  
2020-02-24           1.0            0.0         1.0  
2020-02-28           0.0           -1.0         0.0  
2020-03-02           0.0            0.0        -1.0  
2020-04-09           1.0            1.0         0.0  
2020-04-13           1.0            0.0         1.0  
2020-05-06           0.0           -1.0         0.0  
2020-05-07           0.0            0.0        -1.0  
2020-05-12           1.0            1.0         0.0  
2020-05-13           1.0            0.0         1.0  
2020-06-25           0.0           -1.0         0.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_007_SlowMA_25_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-18     1747.02      1760.26  1711.306  1710.0332     1.2728   
2019-01-22     1743.18      1708.98  1714.526  1705.0696     9.4564   
2019-02-28     1754.00      1697.04  1863.864  1869.2212    -5.3572   
2019-03-01     1708.20      1714.08  1824.576  1865.9576   -41.3816   
2019-04-02     1766.03      1763.55  1749.738  1749.0668     0.6712   
2019-04-03     1778.47      1774.93  1754.302  1743.8240    10.4780   
2019-05-06     1798.96      1800.51  1823.418  1823.4996    -0.0816   
2019-05-07     1781.45      1785.00  1809.420  1824.5304   -15.1104   
2019-06-10     1782.57      1781.12  1765.260  1749.0636    16.1964   
2019-06-11     1799.50      1803.63  1776.580  1749.1884    27.3916   
2019-08-02     1874.11      1846.08  1889.738  1894.6644    -4.9264   
2019-08-05     1819.98      1788.60  1863.548  1891.2200   -27.6720   
2019-08-13     1907.67      1943.19  1908.068  1888.1168    19.9512   
2019-08-14     1908.56      1891.19  1921.994  1888.9888    33.0052   
2019-09-27     1969.56      1944.25  1983.256  1993.8128   -10.5568   
2019-09-30     1953.00      1962.61  1973.896  1996.3704   -22.4744   
2019-10-17     2033.00      2028.53  2007.696  1997.6112    10.0848   
2019-10-18     2030.86      2013.53  2014.966  1995.5964    19.3696   
2019-11-07     1942.20      1849.93  1985.430  2005.3488   -19.9188   
2019-11-08     1941.00      1879.19  1954.864  2001.1884   -46.3244   
2019-12-06     1923.27      1930.27  1904.088  1902.1436     1.9444   
2019-12-09     1928.08      1905.79  1908.358  1897.0944    11.2636   
2020-01-22     2004.33      2000.24  2033.082  2045.6932   -12.6112   
2020-01-23     1986.24      1993.20  2018.690  2045.6204   -26.9304   
2020-02-18     1972.25      1976.28  1959.368  1955.7312     3.6368   
2020-02-19     1982.76      1968.49  1971.206  1951.2508    19.9552   
2020-02-24     1830.93      1792.54  1927.388  1931.2820    -3.8940   
2020-02-25     1803.00      1726.58  1877.448  1918.1576   -40.7096   
2020-04-09     1424.76      1420.64  1351.286  1339.3612    11.9248   
2020-04-13     1413.19      1421.01  1389.352  1331.7180    57.6340   
2020-05-11     1427.02      1411.00  1411.570  1411.7612    -0.1912   
2020-05-12     1401.09      1385.92  1410.114  1412.9308    -2.8168   
2020-05-19     1556.29      1547.56  1447.576  1420.8660    26.7100   
2020-05-20     1578.52      1599.15  1494.192  1427.8476    66.3444   
2020-06-17     1677.92      1638.24  1634.988  1637.2868    -2.2988   
2020-06-18     1622.40      1628.35  1642.984  1647.7780    -4.7940   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-18           1.0            1.0         0.0  
2019-01-22           1.0            0.0         1.0  
2019-02-28           0.0           -1.0         0.0  
2019-03-01           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-06           0.0           -1.0         0.0  
2019-05-07           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-06           1.0            1.0         0.0  
2019-12-09           1.0            0.0         1.0  
2020-01-22           0.0           -1.0         0.0  
2020-01-23           0.0            0.0        -1.0  
2020-02-18           1.0            1.0         0.0  
2020-02-19           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-04-09           1.0            1.0         0.0  
2020-04-13           1.0            0.0         1.0  
2020-05-11           0.0           -1.0         0.0  
2020-05-12           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-17           0.0           -1.0         0.0  
2020-06-18           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_008_SlowMA_25_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-24     1748.98      1795.67  1714.871  1704.8024    10.0686   
2019-01-25     1811.99      1802.20  1727.358  1706.1136    21.2444   
2019-03-04     1723.66      1707.82  1850.920  1862.1824   -11.2624   
2019-03-05     1715.00      1745.93  1831.963  1859.4756   -27.5126   
2019-04-02     1766.03      1763.55  1754.033  1749.0668     4.9662   
2019-04-03     1778.47      1774.93  1754.083  1743.8240    10.2590   
2019-05-09     1729.43      1736.03  1813.407  1822.4976    -9.0906   
2019-05-10     1825.00      1829.85  1809.592  1824.4676   -14.8756   
2019-06-13     1802.05      1809.52  1754.503  1752.0600     2.4430   
2019-06-14     1808.20      1775.50  1766.431  1753.6388    12.7922   
2019-08-06     1799.20      1786.52  1883.604  1886.7440    -3.1400   
2019-08-07     1758.40      1821.56  1873.835  1883.2868    -9.4518   
2019-08-19     1944.87      1943.73  1898.864  1894.2700     4.5940   
2019-08-20     1942.51      1934.40  1913.652  1896.0900    17.5620   
2019-10-02     1969.00      1941.44  1988.850  1999.6772   -10.8272   
2019-10-03     1936.55      1961.45  1979.138  2000.4552   -21.3172   
2019-10-22     2029.04      2023.05  2000.354  1991.3924     8.9616   
2019-10-23     2019.66      2032.23  2009.244  1990.3468    18.8972   
2019-11-08     1941.00      1879.19  2000.451  2001.1884    -0.7374   
2019-11-11     1869.00      1896.04  1984.350  1998.9676   -14.6176   
2019-12-09     1928.08      1905.79  1902.171  1897.0944     5.0766   
2019-12-10     1902.40      1904.63  1902.880  1892.9724     9.9076   
2020-01-24     1998.00      1962.96  2036.045  2044.0640    -8.0190   
2020-01-27     1906.41      1908.89  2018.244  2040.7592   -22.5152   
2020-02-20     1960.00      1970.91  1949.337  1947.2280     2.1090   
2020-02-21     1965.00      1928.72  1946.119  1941.7704     4.3486   
2020-02-26     1731.22      1678.20  1895.298  1905.6628   -10.3648   
2020-02-27     1612.98      1659.85  1865.247  1892.0472   -26.8002   
2020-04-13     1413.19      1421.01  1336.262  1331.7180     4.5440   
2020-04-14     1460.09      1449.42  1350.381  1328.5828    21.7982   
2020-05-14     1348.74      1382.51  1405.444  1412.9368    -7.4928   
2020-05-15     1377.01      1384.31  1398.996  1411.4836   -12.4876   
2020-05-19     1556.29      1547.56  1428.845  1420.8660     7.9790   
2020-05-20     1578.52      1599.15  1450.869  1427.8476    23.0214   
2020-06-22     1609.74      1633.52  1657.500  1667.5224   -10.0224   
2020-06-23     1652.30      1677.10  1647.413  1672.3092   -24.8962   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-02           0.0           -1.0         0.0  
2019-10-03           0.0            0.0        -1.0  
2019-10-22           1.0            1.0         0.0  
2019-10-23           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-09           1.0            1.0         0.0  
2019-12-10           1.0            0.0         1.0  
2020-01-24           0.0           -1.0         0.0  
2020-01-27           0.0            0.0        -1.0  
2020-02-20           1.0            1.0         0.0  
2020-02-21           1.0            0.0         1.0  
2020-02-26           0.0           -1.0         0.0  
2020-02-27           0.0            0.0        -1.0  
2020-04-13           1.0            1.0         0.0  
2020-04-14           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-22           0.0           -1.0         0.0  
2020-06-23           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_009_SlowMA_25_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-24     1748.98      1795.67  1705.174000  1704.8024   0.371600   
2019-01-25     1811.99      1802.20  1714.446000  1706.1136   8.332400   
2019-03-06     1748.37      1751.62  1850.841333  1857.1884  -6.347067   
2019-03-07     1746.50      1725.01  1837.844000  1853.4408 -15.596800   
2019-04-02     1766.03      1763.55  1754.496667  1749.0668   5.429867   
2019-04-03     1778.47      1774.93  1755.444667  1743.8240  11.620667   
2019-05-13     1800.00      1777.26  1824.163333  1824.7800  -0.616667   
2019-05-14     1787.12      1793.67  1817.892667  1824.9780  -7.085333   
2019-06-19     1812.00      1842.06  1761.736667  1754.9060   6.830667   
2019-06-20     1862.07      1861.31  1774.286667  1757.7812  16.505467   
2019-08-05     1819.98      1788.60  1891.207333  1891.2200  -0.012667   
2019-08-06     1799.20      1786.52  1884.382000  1886.7440  -2.362000   
2019-08-08     1900.00      1941.01  1884.976667  1884.1412   0.835467   
2019-08-09     1926.54      1917.69  1887.350000  1883.8588   3.491200   
2019-08-15     1900.03      1904.67  1888.457333  1890.2088  -1.751467   
2019-08-16     1929.00      1922.19  1885.480000  1891.7972  -6.317200   
2019-08-26     1918.24      1916.81  1909.782667  1903.8604   5.922267   
2019-08-27     1921.74      1919.99  1918.680667  1904.6500  14.030667   
2019-10-07     1971.01      1951.56  1994.701333  2000.9036  -6.202267   
2019-10-08     1937.05      1938.19  1985.418000  2000.7600 -15.342000   
2019-10-23     2019.66      2032.23  1991.344667  1990.3468   0.997867   
2019-10-24     2035.00      2043.75  1996.831333  1989.7540   7.077333   
2019-11-12     1901.35      1875.84  1993.886667  1996.4736  -2.586933   
2019-11-13     1855.59      1859.09  1982.344000  1993.1040 -10.760000   
2019-12-11     1915.90      1925.88  1896.992000  1888.9904   8.001600   
2019-12-12     1930.85      1948.48  1903.436000  1886.4460  16.990000   
2020-01-27     1906.41      1908.89  2035.465333  2040.7592  -5.293867   
2020-01-28     1914.67      1917.45  2026.802000  2037.3324 -10.530400   
2020-04-14     1460.09      1449.42  1339.900667  1328.5828  11.317867   
2020-04-15     1407.84      1424.61  1350.910000  1323.2072  27.702800   
2020-06-25     1585.81      1615.39  1675.424667  1675.4696  -0.044933   
2020-06-26     1597.30      1541.25  1657.332000  1673.2924 -15.960400   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-06           0.0           -1.0         0.0  
2019-03-07           0.0            0.0        -1.0  
2019-04-02           1.0            1.0         0.0  
2019-04-03           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-08           1.0            1.0         0.0  
2019-08-09           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-26           1.0            1.0         0.0  
2019-08-27           1.0            0.0         1.0  
2019-10-07           0.0           -1.0         0.0  
2019-10-08           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-11           1.0            1.0         0.0  
2019-12-12           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-14           1.0            1.0         0.0  
2020-04-15           1.0            0.0         1.0  
2020-06-25           0.0           -1.0         0.0  
2020-06-26           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_010_SlowMA_25_FastMA_20
            open_price  close_price    fast_ma    slow_ma  ma_change  \
date                                                                   
2019-01-24     1748.98      1795.67  1707.9305  1704.8024     3.1281   
2019-01-25     1811.99      1802.20  1712.8780  1706.1136     6.7644   
2019-03-07     1746.50      1725.01  1849.8035  1853.4408    -3.6373   
2019-03-08     1708.04      1715.82  1841.7415  1848.7612    -7.0197   
2019-04-03     1778.47      1774.93  1748.9555  1743.8240     5.1315   
2019-04-04     1775.31      1780.60  1751.7350  1747.1664     4.5686   
2019-05-15     1778.60      1789.43  1823.6910  1824.7764    -1.0854   
2019-05-16     1790.00      1803.31  1821.8670  1824.6688    -2.8018   
2019-06-21     1859.36      1880.00  1762.3780  1760.8488     1.5292   
2019-06-24     1880.97      1870.81  1770.4945  1764.1896     6.3049   
2019-08-02     1874.11      1846.08  1892.0545  1894.6644    -2.6099   
2019-08-05     1819.98      1788.60  1887.6965  1891.2200    -3.5235   
2019-08-09     1926.54      1917.69  1885.8400  1883.8588     1.9812   
2019-08-12     1900.44      1916.89  1887.5890  1885.5040     2.0850   
2019-08-22     1962.45      1952.47  1901.7700  1902.2728    -0.5028   
2019-08-23     1942.98      1898.67  1898.3610  1902.9360    -4.5750   
2019-08-30     1971.80      1966.41  1911.0440  1906.7828     4.2612   
2019-09-03     1956.56      1941.78  1918.7030  1907.6720    11.0310   
2019-10-09     1953.72      1943.33  1999.0150  2000.1416    -1.1266   
2019-10-10     1942.69      1962.91  1995.0900  1998.8804    -3.7904   
2019-10-25     2020.13      2055.93  1992.5965  1990.7284     1.8681   
2019-10-28     2053.02      2057.05  1997.3185  1992.6340     4.6845   
2019-11-13     1855.59      1859.09  1992.7370  1993.1040    -0.3670   
2019-11-14     1855.39      1865.55  1984.5880  1989.2096    -4.6216   
2019-12-12     1930.85      1948.48  1890.0530  1886.4460     3.6070   
2019-12-13     1960.87      1973.60  1895.4555  1891.3928     4.0627   
2020-01-28     1914.67      1917.45  2034.8545  2037.3324    -2.4779   
2020-01-29     1924.04      1893.95  2026.8585  2032.1600    -5.3015   
2020-04-16     1432.35      1407.40  1322.5835  1321.8032     0.7803   
2020-04-17     1469.00      1470.87  1336.5530  1329.4220     7.1310   
2020-05-13     1379.34      1366.07  1411.2615  1412.5188    -1.2573   
2020-05-14     1348.74      1382.51  1410.0170  1412.9368    -2.9198   
2020-05-19     1556.29      1547.56  1423.2460  1420.8660     2.3800   
2020-05-20     1578.52      1599.15  1435.4535  1427.8476     7.6059   
2020-06-29     1567.77      1593.22  1669.4725  1671.7692    -2.2967   
2020-06-30     1583.90      1592.34  1666.3395  1665.5864     0.7531   
2020-07-01     1606.05      1658.79  1662.9805  1663.9888    -1.0083   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-03           1.0            1.0         0.0  
2019-04-04           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-08-02           0.0           -1.0         0.0  
2019-08-05           0.0            0.0        -1.0  
2019-08-09           1.0            1.0         0.0  
2019-08-12           1.0            0.0         1.0  
2019-08-22           0.0           -1.0         0.0  
2019-08-23           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-10-09           0.0           -1.0         0.0  
2019-10-10           0.0            0.0        -1.0  
2019-10-25           1.0            1.0         0.0  
2019-10-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-12           1.0            1.0         0.0  
2019-12-13           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-16           1.0            1.0         0.0  
2020-04-17           1.0            0.0         1.0  
2020-05-13           0.0           -1.0         0.0  
2020-05-14           0.0            0.0        -1.0  
2020-05-19           1.0            1.0         0.0  
2020-05-20           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           1.0            1.0        -1.0  
2020-07-01           0.0           -1.0         1.0  

List the signal change and entry/exit points for SMA_011_SlowMA_30_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-24     1748.98      1795.67  1746.746  1723.609667  23.136333   
2019-01-25     1811.99      1802.20  1762.284  1721.938000  40.346000   
2019-03-01     1708.20      1714.08  1824.576  1846.089000 -21.513000   
2019-03-04     1723.66      1707.82  1788.134  1845.532667 -57.398667   
2019-04-05     1788.03      1769.45  1769.552  1761.913667   7.638333   
2019-04-08     1767.92      1788.72  1775.450  1758.536667  16.913333   
2019-05-07     1781.45      1785.00  1809.420  1812.242333  -2.822333   
2019-05-08     1765.01      1751.63  1793.842  1811.667667 -17.825667   
2019-06-10     1782.57      1781.12  1765.260  1763.983000   1.277000   
2019-06-11     1799.50      1803.63  1776.580  1761.560000  15.020000   
2019-08-05     1819.98      1788.60  1863.548  1884.896000 -21.348000   
2019-08-06     1799.20      1786.52  1837.534  1882.086333 -44.552333   
2019-08-13     1907.67      1943.19  1908.068  1890.298000  17.770000   
2019-08-14     1908.56      1891.19  1921.994  1889.738000  32.256000   
2019-09-27     1969.56      1944.25  1983.256  1985.128667  -1.872667   
2019-09-30     1953.00      1962.61  1973.896  1986.476000 -12.580000   
2019-10-17     2033.00      2028.53  2007.696  2000.349667   7.346333   
2019-10-18     2030.86      2013.53  2014.966  2001.879667  13.086333   
2019-11-07     1942.20      1849.93  1985.430  1997.383333 -11.953333   
2019-11-08     1941.00      1879.19  1954.864  1995.214667 -40.350667   
2019-12-11     1915.90      1925.88  1914.158  1912.940333   1.217667   
2019-12-12     1930.85      1948.48  1923.010  1909.571333  13.438667   
2020-01-23     1986.24      1993.20  2018.690  2029.604000 -10.914000   
2020-01-24     1998.00      1962.96  2000.332  2031.548333 -31.216333   
2020-02-20     1960.00      1970.91  1973.316  1968.892333   4.423667   
2020-02-21     1965.00      1928.72  1967.072  1964.419667   2.652333   
2020-02-24     1830.93      1792.54  1927.388  1954.694667 -27.306667   
2020-02-25     1803.00      1726.58  1877.448  1942.684000 -65.236000   
2020-04-14     1460.09      1449.42  1407.900  1380.568333  27.331667   
2020-04-15     1407.84      1424.61  1417.548  1371.954667  45.593333   
2020-05-14     1348.74      1382.51  1395.266  1397.307000  -2.041000   
2020-05-15     1377.01      1384.31  1385.962  1401.450667 -15.488667   
2020-05-18     1430.00      1557.43  1415.248  1412.342333   2.905667   
2020-05-19     1556.29      1547.56  1447.576  1418.705000  28.871000   
2020-06-24     1660.71      1610.33  1635.242  1636.946000  -1.704000   
2020-06-25     1585.81      1615.39  1632.650  1645.256667 -12.606667   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-01           0.0           -1.0         0.0  
2019-03-04           0.0            0.0        -1.0  
2019-04-05           1.0            1.0         0.0  
2019-04-08           1.0            0.0         1.0  
2019-05-07           0.0           -1.0         0.0  
2019-05-08           0.0            0.0        -1.0  
2019-06-10           1.0            1.0         0.0  
2019-06-11           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-27           0.0           -1.0         0.0  
2019-09-30           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-11           1.0            1.0         0.0  
2019-12-12           1.0            0.0         1.0  
2020-01-23           0.0           -1.0         0.0  
2020-01-24           0.0            0.0        -1.0  
2020-02-20           1.0            1.0         0.0  
2020-02-21           1.0            0.0         1.0  
2020-02-24           0.0           -1.0         0.0  
2020-02-25           0.0            0.0        -1.0  
2020-04-14           1.0            1.0         0.0  
2020-04-15           1.0            0.0         1.0  
2020-05-14           0.0           -1.0         0.0  
2020-05-15           0.0            0.0        -1.0  
2020-05-18           1.0            1.0         0.0  
2020-05-19           1.0            0.0         1.0  
2020-06-24           0.0           -1.0         0.0  
2020-06-25           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_012_SlowMA_30_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-25     1811.99      1802.20  1727.358  1721.938000   5.420000   
2019-01-28     1787.62      1813.60  1742.129  1720.519667  21.609333   
2019-03-05     1715.00      1745.93  1831.963  1845.055000 -13.092000   
2019-03-06     1748.37      1751.62  1814.508  1846.476333 -31.968333   
2019-04-08     1767.92      1788.72  1763.126  1758.536667   4.589333   
2019-04-09     1776.75      1794.47  1765.686  1754.494667  11.191333   
2019-05-10     1825.00      1829.85  1809.592  1814.497000  -4.905000   
2019-05-13     1800.00      1777.26  1799.686  1815.575333 -15.889333   
2019-06-14     1808.20      1775.50  1766.431  1757.940333   8.490667   
2019-06-17     1776.00      1781.41  1779.526  1756.518333  23.007667   
2019-08-07     1758.40      1821.56  1873.835  1881.289333  -7.454333   
2019-08-08     1900.00      1941.01  1875.323  1884.982333  -9.659333   
2019-08-19     1944.87      1943.73  1898.864  1891.419000   7.445000   
2019-08-20     1942.51      1934.40  1913.652  1893.303333  20.348667   
2019-10-03     1936.55      1961.45  1979.138  1988.044000  -8.906000   
2019-10-04     1970.64      1983.20  1974.301  1989.068333 -14.767333   
2019-10-23     2019.66      2032.23  2009.244  2002.424667   6.819333   
2019-10-24     2035.00      2043.75  2017.328  2002.502667  14.825333   
2019-11-11     1869.00      1896.04  1984.350  1992.995667  -8.645667   
2019-11-12     1901.35      1875.84  1967.654  1989.589333 -21.935333   
2019-12-12     1930.85      1948.48  1910.925  1909.571333   1.353667   
2019-12-13     1960.87      1973.60  1917.882  1907.065667  10.816333   
2020-01-27     1906.41      1908.89  2018.244  2030.982000 -12.738000   
2020-01-28     1914.67      1917.45  2001.939  2029.947667 -28.008667   
2020-04-16     1432.35      1407.40  1371.887  1361.130333  10.756667   
2020-04-17     1469.00      1470.87  1392.974  1355.244667  37.729333   
2020-05-15     1377.01      1384.31  1398.996  1401.450667  -2.454667   
2020-05-18     1430.00      1557.43  1413.409  1412.342333   1.066667   
2020-05-19     1556.29      1547.56  1428.845  1418.705000  10.140000   
2020-06-24     1660.71      1610.33  1635.115  1636.946000  -1.831000   
2020-06-25     1585.81      1615.39  1637.817  1645.256667  -7.439667   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-05           0.0           -1.0         0.0  
2019-03-06           0.0            0.0        -1.0  
2019-04-08           1.0            1.0         0.0  
2019-04-09           1.0            0.0         1.0  
2019-05-10           0.0           -1.0         0.0  
2019-05-13           0.0            0.0        -1.0  
2019-06-14           1.0            1.0         0.0  
2019-06-17           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-11           0.0           -1.0         0.0  
2019-11-12           0.0            0.0        -1.0  
2019-12-12           1.0            1.0         0.0  
2019-12-13           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-16           1.0            1.0         0.0  
2020-04-17           1.0            0.0         1.0  
2020-05-15           0.0           -1.0         0.0  
2020-05-18           1.0            1.0        -1.0  
2020-05-19           1.0            0.0         1.0  
2020-06-24           0.0           -1.0         0.0  
2020-06-25           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_013_SlowMA_30_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-01-28     1787.62      1813.60  1720.849333  1720.519667   0.329667   
2019-01-29     1816.62      1808.80  1727.314667  1719.710667   7.604000   
2019-03-07     1746.50      1725.01  1837.844000  1845.833000  -7.989000   
2019-03-08     1708.04      1715.82  1825.410000  1843.171333 -17.761333   
2019-04-08     1767.92      1788.72  1761.204000  1758.536667   2.667333   
2019-04-09     1776.75      1794.47  1763.233333  1754.494667   8.738667   
2019-05-15     1778.60      1789.43  1812.702667  1817.586000  -4.883333   
2019-05-16     1790.00      1803.31  1808.506000  1818.532000 -10.026000   
2019-06-19     1812.00      1842.06  1761.736667  1758.703000   3.033667   
2019-06-20     1862.07      1861.31  1774.286667  1762.359000  11.927667   
2019-08-08     1900.00      1941.01  1884.976667  1884.982333  -0.005667   
2019-08-09     1926.54      1917.69  1887.350000  1887.399667  -0.049667   
2019-08-12     1900.44      1916.89  1888.896000  1888.805667   0.090333   
2019-08-13     1907.67      1943.19  1891.758667  1890.298000   1.460667   
2019-08-15     1900.03      1904.67  1888.457333  1889.238667  -0.781333   
2019-08-16     1929.00      1922.19  1885.480000  1889.153333  -3.673333   
2019-08-23     1942.98      1898.67  1901.235333  1899.331667   1.903667   
2019-08-26     1918.24      1916.81  1909.782667  1900.495000   9.287667   
2019-10-08     1937.05      1938.19  1985.418000  1991.544000  -6.126000   
2019-10-09     1953.72      1943.33  1977.748667  1992.322000 -14.573333   
2019-10-28     2053.02      2057.05  2008.712667  2001.707000   7.005667   
2019-10-29     2054.14      2042.80  2015.686667  2000.552333  15.134333   
2019-11-13     1855.59      1859.09  1982.344000  1986.844333  -4.500333   
2019-11-14     1855.39      1865.55  1970.464000  1983.647667 -13.183667   
2019-12-13     1960.87      1973.60  1910.122000  1907.065667   3.056333   
2019-12-16     1983.47      1995.02  1917.954667  1905.832333  12.122333   
2020-01-28     1914.67      1917.45  2026.802000  2029.947667  -3.145667   
2020-01-29     1924.04      1893.95  2015.195333  2027.292667 -12.097333   
2020-04-17     1469.00      1470.87  1358.004667  1355.244667   2.760000   
2020-04-20     1462.05      1411.63  1368.436667  1348.562667  19.874000   
2020-06-29     1567.77      1593.22  1640.819333  1657.511667 -16.692333   
2020-06-30     1583.90      1592.34  1628.444000  1658.675333 -30.231333   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-08           1.0            1.0         0.0  
2019-04-09           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-08           0.0           -1.0         0.0  
2019-08-09           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-23           1.0            1.0         0.0  
2019-08-26           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-13           1.0            1.0         0.0  
2019-12-16           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-17           1.0            1.0         0.0  
2020-04-20           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_014_SlowMA_30_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-01-29     1816.62      1808.80  1722.3165  1719.710667   2.605833   
2019-01-30     1825.33      1818.70  1727.1305  1720.096000   7.034500   
2019-03-08     1708.04      1715.82  1841.7415  1843.171333  -1.429833   
2019-03-11     1721.69      1709.90  1833.6820  1840.094667  -6.412667   
2019-04-09     1776.75      1794.47  1761.2810  1754.494667   6.786333   
2019-04-10     1793.85      1806.00  1763.5455  1751.161333  12.384167   
2019-05-20     1769.73      1752.23  1814.4190  1818.181000  -3.762000   
2019-05-21     1762.34      1772.19  1808.6420  1817.630000  -8.988000   
2019-06-24     1880.97      1870.81  1770.4945  1768.523333   1.971167   
2019-06-25     1880.83      1845.47  1778.4780  1770.797000   7.681000   
2019-08-07     1758.40      1821.56  1880.7375  1881.289333  -0.551833   
2019-08-08     1900.00      1941.01  1884.0795  1884.982333  -0.902833   
2019-08-13     1907.67      1943.19  1890.3035  1890.298000   0.005500   
2019-08-14     1908.56      1891.19  1891.4760  1889.738000   1.738000   
2019-08-23     1942.98      1898.67  1898.3610  1899.331667  -0.970667   
2019-08-26     1918.24      1916.81  1898.2240  1900.495000  -2.271000   
2019-08-30     1971.80      1966.41  1911.0440  1909.191667   1.852333   
2019-09-03     1956.56      1941.78  1918.7030  1910.794333   7.908667   
2019-10-11     1984.30      1977.18  1990.7540  1993.687000  -2.933000   
2019-10-14     1964.52      1988.75  1986.5440  1994.431667  -7.887667   
2019-10-29     2054.14      2042.80  2000.5570  2000.552333   0.004667   
2019-10-30     2035.53      2049.55  2005.9625  2000.258333   5.704167   
2019-11-15     1873.85      1848.82  1976.3525  1979.168333  -2.815833   
2019-11-18     1847.04      1838.03  1967.1420  1975.384000  -8.242000   
2019-12-17     2000.00      2001.87  1910.9575  1905.638667   5.318833   
2019-12-18     2008.67      1991.51  1918.2680  1904.508000  13.760000   
2020-01-29     1924.04      1893.95  2026.8585  2027.292667  -0.434167   
2020-01-30     1871.42      1872.09  2017.7765  2023.195000  -5.418500   
2020-04-21     1382.81      1342.22  1357.7620  1342.376667  15.385333   
2020-04-22     1365.01      1355.00  1362.5385  1335.576667  26.961833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-29           1.0            1.0         0.0  
2019-01-30           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-09           1.0            1.0         0.0  
2019-04-10           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-08-23           0.0           -1.0         0.0  
2019-08-26           0.0            0.0        -1.0  
2019-08-30           1.0            1.0         0.0  
2019-09-03           1.0            0.0         1.0  
2019-10-11           0.0           -1.0         0.0  
2019-10-14           0.0            0.0        -1.0  
2019-10-29           1.0            1.0         0.0  
2019-10-30           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-21           1.0            1.0         0.0  
2020-04-22           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_015_SlowMA_35_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-24     1748.98      1795.67  1746.746  1743.825429   2.920571   
2019-01-25     1811.99      1802.20  1762.284  1740.468286  21.815714   
2019-03-04     1723.66      1707.82  1788.134  1823.661143 -35.527143   
2019-03-05     1715.00      1745.93  1754.174  1825.948000 -71.774000   
2019-04-09     1776.75      1794.47  1781.634  1776.674286   4.959714   
2019-04-10     1793.85      1806.00  1787.848  1773.240857  14.607143   
2019-05-08     1765.01      1751.63  1793.842  1804.047714 -10.205714   
2019-05-09     1729.43      1736.03  1779.448  1802.950571 -23.502571   
2019-06-12     1804.17      1798.90  1783.360  1774.958857   8.401143   
2019-06-13     1802.05      1809.52  1794.292  1773.308571  20.983429   
2019-08-05     1819.98      1788.60  1863.548  1877.732857 -14.184857   
2019-08-06     1799.20      1786.52  1837.534  1877.878857 -40.344857   
2019-08-13     1907.67      1943.19  1908.068  1885.798000  22.270000   
2019-08-14     1908.56      1891.19  1921.994  1887.104286  34.889714   
2019-09-30     1953.00      1962.61  1973.896  1976.354571  -2.458571   
2019-10-01     1977.00      1978.03  1971.374  1978.101429  -6.727429   
2019-10-16     2016.80      2027.63  1994.572  1992.643429   1.928571   
2019-10-17     2033.00      2028.53  2007.696  1995.115714  12.580286   
2019-11-07     1942.20      1849.93  1985.430  1997.860000 -12.430000   
2019-11-08     1941.00      1879.19  1954.864  1993.506286 -38.642286   
2019-12-13     1960.87      1973.60  1931.676  1927.602000   4.074000   
2019-12-16     1983.47      1995.02  1949.522  1925.861714  23.660286   
2020-01-24     1998.00      1962.96  2000.332  2014.654000 -14.322000   
2020-01-27     1906.41      1908.89  1971.172  2014.292857 -43.120857   
2020-04-15     1407.84      1424.61  1417.548  1417.267143   0.280857   
2020-04-16     1432.35      1407.40  1424.616  1409.530000  15.086000   
2020-06-29     1567.77      1593.22  1607.458  1618.718857 -11.260857   
2020-06-30     1583.90      1592.34  1590.506  1623.900000 -33.394000   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-24           1.0            1.0         0.0  
2019-01-25           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-09           1.0            1.0         0.0  
2019-04-10           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-12           1.0            1.0         0.0  
2019-06-13           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-09-30           0.0           -1.0         0.0  
2019-10-01           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-13           1.0            1.0         0.0  
2019-12-16           1.0            0.0         1.0  
2020-01-24           0.0           -1.0         0.0  
2020-01-27           0.0            0.0        -1.0  
2020-04-15           1.0            1.0         0.0  
2020-04-16           1.0            0.0         1.0  
2020-06-29           0.0           -1.0         0.0  
2020-06-30           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_016_SlowMA_35_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-28     1787.62      1813.60  1742.129  1739.052857   3.076143   
2019-01-29     1816.62      1808.80  1753.721  1736.954571  16.766429   
2019-03-06     1748.37      1751.62  1814.508  1827.626286 -13.118286   
2019-03-07     1746.50      1725.01  1796.378  1828.389143 -32.011143   
2019-04-11     1810.00      1818.59  1780.045  1770.734571   9.310429   
2019-04-12     1827.87      1833.07  1788.861  1768.521714  20.339286   
2019-05-13     1800.00      1777.26  1799.686  1806.126571  -6.440571   
2019-05-14     1787.12      1793.67  1793.554  1807.306000 -13.752000   
2019-06-17     1776.00      1781.41  1779.526  1768.241429  11.284571   
2019-06-18     1808.38      1808.99  1785.722  1766.317714  19.404286   
2019-08-07     1758.40      1821.56  1873.835  1878.238000  -4.403000   
2019-08-08     1900.00      1941.01  1875.323  1881.065143  -5.742143   
2019-08-19     1944.87      1943.73  1898.864  1893.404000   5.460000   
2019-08-20     1942.51      1934.40  1913.652  1894.432000  19.220000   
2019-10-03     1936.55      1961.45  1979.138  1980.058857  -0.920857   
2019-10-04     1970.64      1983.20  1974.301  1982.302571  -8.001571   
2019-10-23     2019.66      2032.23  2009.244  2002.742286   6.501714   
2019-10-24     2035.00      2043.75  2017.328  2004.151143  13.176857   
2019-11-11     1869.00      1896.04  1984.350  1990.267143  -5.917143   
2019-11-12     1901.35      1875.84  1967.654  1986.987143 -19.333143   
2019-12-16     1983.47      1995.02  1928.940  1925.861714   3.078286   
2019-12-17     2000.00      2001.87  1941.129  1924.285143  16.843857   
2020-01-28     1914.67      1917.45  2001.939  2014.670857 -12.731857   
2020-01-29     1924.04      1893.95  1984.186  2013.633143 -29.447143   
2020-04-20     1462.05      1411.63  1411.069  1396.015429  15.053571   
2020-04-21     1382.81      1342.22  1409.623  1384.965143  24.657857   
2020-06-30     1583.90      1592.34  1615.665  1623.900000  -8.235000   
2020-07-01     1606.05      1658.79  1617.720  1631.696286 -13.976286   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-06           0.0           -1.0         0.0  
2019-03-07           0.0            0.0        -1.0  
2019-04-11           1.0            1.0         0.0  
2019-04-12           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-17           1.0            1.0         0.0  
2019-06-18           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-04           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-11           0.0           -1.0         0.0  
2019-11-12           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-28           0.0           -1.0         0.0  
2020-01-29           0.0            0.0        -1.0  
2020-04-20           1.0            1.0         0.0  
2020-04-21           1.0            0.0         1.0  
2020-06-30           0.0           -1.0         0.0  
2020-07-01           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_017_SlowMA_35_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-01-31     1820.37      1832.81  1748.321333  1736.697143  11.624190   
2019-02-01     1824.05      1836.96  1758.963333  1736.257429  22.705905   
2019-03-08     1708.04      1715.82  1825.410000  1829.396286  -3.986286   
2019-03-11     1721.69      1709.90  1810.498667  1828.978857 -18.480190   
2019-04-12     1827.87      1833.07  1775.718667  1768.521714   7.196952   
2019-04-15     1834.00      1846.23  1781.974667  1767.270286  14.704381   
2019-05-16     1790.00      1803.31  1808.506000  1809.356286  -0.850286   
2019-05-17     1786.37      1787.29  1803.125333  1811.024857  -7.899524   
2019-06-20     1862.07      1861.31  1774.286667  1766.856571   7.430095   
2019-06-21     1859.36      1880.00  1789.205333  1768.913714  20.291619   
2019-08-15     1900.03      1904.67  1888.457333  1889.231429  -0.774095   
2019-08-16     1929.00      1922.19  1885.480000  1891.432000  -5.952000   
2019-08-22     1962.45      1952.47  1897.729333  1896.734286   0.995048   
2019-08-23     1942.98      1898.67  1901.235333  1895.989143   5.246190   
2019-10-09     1953.72      1943.33  1977.748667  1983.238571  -5.489905   
2019-10-10     1942.69      1962.91  1971.371333  1983.443143 -12.071810   
2019-10-28     2053.02      2057.05  2008.712667  2008.525429   0.187238   
2019-10-29     2054.14      2042.80  2015.686667  2009.212286   6.474381   
2019-11-13     1855.59      1859.09  1982.344000  1983.146000  -0.802000   
2019-11-14     1855.39      1865.55  1970.464000  1979.920286  -9.456286   
2019-12-17     2000.00      2001.87  1924.910000  1924.285143   0.624857   
2019-12-18     2008.67      1991.51  1931.846667  1922.819714   9.026952   
2020-01-30     1871.42      1872.09  2002.474667  2012.670286 -10.195619   
2020-01-31     1865.93      1830.55  1985.558667  2010.553714 -24.995048   
2020-04-23     1354.05      1360.00  1377.239333  1364.960857  12.278476   
2020-04-24     1372.39      1362.77  1384.090667  1356.827429  27.263238   
2020-07-01     1606.05      1658.79  1623.476000  1631.696286  -8.220286   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-31           1.0            1.0         0.0  
2019-02-01           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-16           0.0           -1.0         0.0  
2019-05-17           0.0            0.0        -1.0  
2019-06-20           1.0            1.0         0.0  
2019-06-21           1.0            0.0         1.0  
2019-08-15           0.0           -1.0         0.0  
2019-08-16           0.0            0.0        -1.0  
2019-08-22           1.0            1.0         0.0  
2019-08-23           1.0            0.0         1.0  
2019-10-09           0.0           -1.0         0.0  
2019-10-10           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-30           0.0           -1.0         0.0  
2020-01-31           0.0            0.0        -1.0  
2020-04-23           1.0            1.0         0.0  
2020-04-24           1.0            0.0         1.0  
2020-07-01           0.0           -1.0         0.0  

List the signal change and entry/exit points for SMA_018_SlowMA_35_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-02-01     1824.05      1836.96  1741.3780  1736.257429   5.120571   
2019-02-04     1840.39      1860.99  1748.5500  1736.395714  12.154286   
2019-03-12     1709.72      1736.00  1827.2320  1828.285714  -1.053714   
2019-03-13     1740.44      1760.71  1820.5030  1829.763714  -9.260714   
2019-04-12     1827.87      1833.07  1771.3260  1768.521714   2.804286   
2019-04-15     1834.00      1846.23  1775.8210  1767.270286   8.550714   
2019-05-21     1762.34      1772.19  1808.6420  1811.604286  -2.962286   
2019-05-22     1757.35      1745.02  1802.5290  1811.074857  -8.545857   
2019-06-24     1880.97      1870.81  1770.4945  1770.249143   0.245357   
2019-06-25     1880.83      1845.47  1778.4780  1771.533714   6.944286   
2019-10-14     1964.52      1988.75  1986.5440  1986.722857  -0.178857   
2019-10-15     1992.21      2016.39  1983.4915  1989.568000  -6.076500   
2019-10-31     2046.08      2048.77  2010.3285  2009.405143   0.923357   
2019-11-01     2023.62      2032.02  2012.7695  2008.494286   4.275214   
2019-11-15     1873.85      1848.82  1976.3525  1977.193714  -0.841214   
2019-11-18     1847.04      1838.03  1967.1420  1973.634286  -6.492286   
2019-12-19     1996.00      2003.12  1925.8330  1921.493143   4.339857   
2019-12-20     2017.00      2023.26  1933.3305  1920.764286  12.566214   
2020-01-31     1865.93      1830.55  2005.5750  2010.553714  -4.978714   
2020-02-03     1847.15      1839.03  1994.2525  2008.072286 -13.819786   
2020-04-24     1372.39      1362.77  1360.0845  1356.827429   3.257071   
2020-04-27     1374.93      1402.99  1367.4765  1350.853143  16.623357   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-01           1.0            1.0         0.0  
2019-02-04           1.0            0.0         1.0  
2019-03-12           0.0           -1.0         0.0  
2019-03-13           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-21           0.0           -1.0         0.0  
2019-05-22           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-10-14           0.0           -1.0         0.0  
2019-10-15           0.0            0.0        -1.0  
2019-10-31           1.0            1.0         0.0  
2019-11-01           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-24           1.0            1.0         0.0  
2020-04-27           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_019_SlowMA_40_FastMA_05
            open_price  close_price   fast_ma     slow_ma  ma_change  \
date                                                                   
2019-01-25     1811.99      1802.20  1762.284  1757.17950    5.10450   
2019-01-28     1787.62      1813.60  1772.952  1756.90425   16.04775   
2019-03-04     1723.66      1707.82  1788.134  1806.78125  -18.64725   
2019-03-05     1715.00      1745.93  1754.174  1807.49075  -53.31675   
2019-04-11     1810.00      1818.59  1795.446  1789.48975    5.95625   
2019-04-12     1827.87      1833.07  1808.170  1787.75825   20.41175   
2019-05-08     1765.01      1751.63  1793.842  1797.96975   -4.12775   
2019-05-09     1729.43      1736.03  1779.448  1797.35275  -17.90475   
2019-06-13     1802.05      1809.52  1794.292  1783.72700   10.56500   
2019-06-14     1808.20      1775.50  1793.734  1782.11975   11.61425   
2019-08-05     1819.98      1788.60  1863.548  1867.23300   -3.68500   
2019-08-06     1799.20      1786.52  1837.534  1867.36800  -29.83400   
2019-08-13     1907.67      1943.19  1908.068  1881.65250   26.41550   
2019-08-14     1908.56      1891.19  1921.994  1883.70750   38.28650   
2019-10-02     1969.00      1941.44  1960.956  1969.30350   -8.34750   
2019-10-03     1936.55      1961.45  1957.556  1972.80075  -15.24475   
2019-10-16     2016.80      2027.63  1994.572  1984.65525    9.91675   
2019-10-17     2033.00      2028.53  2007.696  1986.47475   21.22125   
2019-11-07     1942.20      1849.93  1985.430  2006.40825  -20.97825   
2019-11-08     1941.00      1879.19  1954.864  2001.79050  -46.92650   
2019-12-16     1983.47      1995.02  1949.522  1939.55900    9.96300   
2019-12-17     2000.00      2001.87  1968.970  1939.04975   29.92025   
2020-01-27     1906.41      1908.89  1971.172  1999.91700  -28.74500   
2020-01-28     1914.67      1917.45  1956.548  2000.19200  -43.64400   
2020-04-29     1487.83      1520.53  1417.122  1380.78425   36.33775   
2020-04-30     1514.53      1480.57  1441.236  1374.49525   66.74075   
2020-06-30     1583.90      1592.34  1590.506  1597.35875   -6.85275   
2020-07-01     1606.05      1658.79  1600.198  1603.99850   -3.80050   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-11           1.0            1.0         0.0  
2019-04-12           1.0            0.0         1.0  
2019-05-08           0.0           -1.0         0.0  
2019-05-09           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-05           0.0           -1.0         0.0  
2019-08-06           0.0            0.0        -1.0  
2019-08-13           1.0            1.0         0.0  
2019-08-14           1.0            0.0         1.0  
2019-10-02           0.0           -1.0         0.0  
2019-10-03           0.0            0.0        -1.0  
2019-10-16           1.0            1.0         0.0  
2019-10-17           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  
2020-06-30           0.0           -1.0         0.0  
2020-07-01           0.0            0.0        -1.0  

List the signal change and entry/exit points for SMA_020_SlowMA_40_FastMA_10
            open_price  close_price   fast_ma     slow_ma  ma_change  \
date                                                                   
2019-01-30     1825.33      1818.70  1765.760  1754.22675   11.53325   
2019-01-31     1820.37      1832.81  1780.984  1752.75000   28.23400   
2019-03-07     1746.50      1725.01  1796.378  1809.43800  -13.06000   
2019-03-08     1708.04      1715.82  1776.908  1811.09625  -34.18825   
2019-04-12     1827.87      1833.07  1788.861  1787.75825    1.10275   
2019-04-15     1834.00      1846.23  1797.561  1785.57475   11.98625   
2019-05-13     1800.00      1777.26  1799.686  1800.12925   -0.44325   
2019-05-14     1787.12      1793.67  1793.554  1801.06275   -7.50875   
2019-06-18     1808.38      1808.99  1785.722  1779.66775    6.05425   
2019-06-19     1812.00      1842.06  1793.428  1778.52600   14.90200   
2019-08-09     1926.54      1917.69  1870.407  1874.07325   -3.66625   
2019-08-12     1900.44      1916.89  1870.141  1877.60800   -7.46700   
2019-08-19     1944.87      1943.73  1898.864  1888.38800   10.47600   
2019-08-20     1942.51      1934.40  1913.652  1889.97775   23.67425   
2019-10-07     1971.01      1951.56  1968.516  1974.70225   -6.18625   
2019-10-08     1937.05      1938.19  1963.271  1975.23475  -11.96375   
2019-10-21     2022.68      2022.24  1991.868  1991.09050    0.77750   
2019-10-22     2029.04      2023.05  2000.354  1993.74650    6.60750   
2019-11-08     1941.00      1879.19  2000.451  2001.79050   -1.33950   
2019-11-11     1869.00      1896.04  1984.350  1997.36775  -13.01775   
2019-12-17     2000.00      2001.87  1941.129  1939.04975    2.07925   
2019-12-18     2008.67      1991.51  1948.127  1938.26125    9.86575   
2020-01-29     1924.04      1893.95  1984.186  1999.94000  -15.75400   
2020-01-30     1871.42      1872.09  1964.879  1999.63125  -34.75225   
2020-04-24     1372.39      1362.77  1400.493  1399.40475    1.08825   
2020-04-27     1374.93      1402.99  1398.691  1392.08800    6.60300   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-30           1.0            1.0         0.0  
2019-01-31           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-13           0.0           -1.0         0.0  
2019-05-14           0.0            0.0        -1.0  
2019-06-18           1.0            1.0         0.0  
2019-06-19           1.0            0.0         1.0  
2019-08-09           0.0           -1.0         0.0  
2019-08-12           0.0            0.0        -1.0  
2019-08-19           1.0            1.0         0.0  
2019-08-20           1.0            0.0         1.0  
2019-10-07           0.0           -1.0         0.0  
2019-10-08           0.0            0.0        -1.0  
2019-10-21           1.0            1.0         0.0  
2019-10-22           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-17           1.0            1.0         0.0  
2019-12-18           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-24           1.0            1.0         0.0  
2020-04-27           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_021_SlowMA_40_FastMA_15
            open_price  close_price      fast_ma     slow_ma  ma_change  \
date                                                                      
2019-02-01     1824.05      1836.96  1758.963333  1750.68150   8.281833   
2019-02-04     1840.39      1860.99  1771.970000  1750.62775  21.342250   
2019-03-11     1721.69      1709.90  1810.498667  1811.91050  -1.411833   
2019-03-12     1709.72      1736.00  1797.198667  1813.66325 -16.464583   
2019-04-16     1851.80      1841.70  1786.830000  1783.22975   3.600250   
2019-04-17     1848.63      1839.79  1792.675333  1781.07025  11.605083   
2019-05-20     1769.73      1752.23  1794.852667  1803.50900  -8.656333   
2019-05-21     1762.34      1772.19  1789.332667  1804.00400 -14.671333   
2019-06-21     1859.36      1880.00  1789.205333  1778.72025  10.485083   
2019-06-24     1880.97      1870.81  1803.895333  1778.79050  25.104833   
2019-08-16     1929.00      1922.19  1885.480000  1886.79475  -1.314750   
2019-08-19     1944.87      1943.73  1887.092000  1888.38800  -1.296000   
2019-08-21     1945.69      1955.75  1892.888667  1892.73475   0.153917   
2019-08-22     1962.45      1952.47  1897.729333  1895.79100   1.938333   
2019-10-10     1942.69      1962.91  1971.371333  1977.03125  -5.659917   
2019-10-11     1984.30      1977.18  1967.745333  1978.84400 -11.098667   
2019-10-25     2020.13      2055.93  2001.680000  2001.56600   0.114000   
2019-10-28     2053.02      2057.05  2008.712667  2003.83200   4.880667   
2019-11-13     1855.59      1859.09  1982.344000  1987.34575  -5.001750   
2019-11-14     1855.39      1865.55  1970.464000  1982.52025 -12.056250   
2019-12-19     1996.00      2003.12  1938.291333  1937.53350   0.757833   
2019-12-20     2017.00      2023.26  1946.240000  1937.02125   9.218750   
2020-01-31     1865.93      1830.55  1985.558667  1998.39550 -12.836833   
2020-02-03     1847.15      1839.03  1969.034000  1996.33300 -27.299000   
2020-04-27     1374.93      1402.99  1395.578000  1392.08800   3.490000   
2020-04-28     1434.20      1439.32  1401.087333  1384.84650  16.240833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-01           1.0            1.0         0.0  
2019-02-04           1.0            0.0         1.0  
2019-03-11           0.0           -1.0         0.0  
2019-03-12           0.0            0.0        -1.0  
2019-04-16           1.0            1.0         0.0  
2019-04-17           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-08-16           0.0           -1.0         0.0  
2019-08-19           0.0            0.0        -1.0  
2019-08-21           1.0            1.0         0.0  
2019-08-22           1.0            0.0         1.0  
2019-10-10           0.0           -1.0         0.0  
2019-10-11           0.0            0.0        -1.0  
2019-10-25           1.0            1.0         0.0  
2019-10-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-27           1.0            1.0         0.0  
2020-04-28           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_022_SlowMA_40_FastMA_20
            open_price  close_price    fast_ma     slow_ma  ma_change  \
date                                                                    
2019-02-05     1887.53      1902.26  1758.0720  1751.12825    6.94375   
2019-02-06     1895.94      1906.93  1769.0725  1752.93875   16.13375   
2019-03-14     1768.83      1743.88  1811.6985  1816.49825   -4.79975   
2019-03-15     1751.79      1752.17  1804.1905  1818.28825  -14.09775   
2019-04-17     1848.63      1839.79  1782.9725  1781.07025    1.90225   
2019-04-18     1847.64      1844.31  1786.4700  1779.52025    6.94975   
2019-05-22     1757.35      1745.02  1802.5290  1803.40775   -0.87875   
2019-05-23     1746.95      1716.93  1795.0625  1802.52825   -7.46575   
2019-06-25     1880.83      1845.47  1778.4780  1778.01925    0.45875   
2019-06-26     1848.30      1830.22  1785.6930  1777.40000    8.29300   
2019-08-27     1921.74      1919.99  1898.3940  1898.72025   -0.32625   
2019-08-28     1911.80      1942.00  1901.1635  1899.57050    1.59300   
2019-08-29     1966.43      1957.14  1905.0275  1900.50775    4.51975   
2019-10-16     2016.80      2027.63  1981.9545  1984.65525   -2.70075   
2019-10-17     2033.00      2028.53  1980.4525  1986.47475   -6.02225   
2019-10-31     2046.08      2048.77  2010.3285  2009.98475    0.34375   
2019-11-01     2023.62      2032.02  2012.7695  2011.59450    1.17500   
2019-11-15     1873.85      1848.82  1976.3525  1977.95150   -1.59900   
2019-11-18     1847.04      1838.03  1967.1420  1973.66700   -6.52500   
2019-12-23     2026.01      2032.10  1941.0590  1936.42550    4.63350   
2019-12-24     2032.24      2044.00  1948.3820  1936.09925   12.28275   
2020-02-03     1847.15      1839.03  1994.2525  1996.33300   -2.08050   
2020-02-04     1857.06      1864.51  1985.1080  1995.34025  -10.23225   
2020-04-29     1487.83      1520.53  1382.7915  1380.78425    2.00725   
2020-04-30     1514.53      1480.57  1393.2385  1374.49525   18.74325   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-05           1.0            1.0         0.0  
2019-02-06           1.0            0.0         1.0  
2019-03-14           0.0           -1.0         0.0  
2019-03-15           0.0            0.0        -1.0  
2019-04-17           1.0            1.0         0.0  
2019-04-18           1.0            0.0         1.0  
2019-05-22           0.0           -1.0         0.0  
2019-05-23           0.0            0.0        -1.0  
2019-06-25           1.0            1.0         0.0  
2019-06-26           1.0            0.0         1.0  
2019-08-27           0.0           -1.0         0.0  
2019-08-28           1.0            1.0        -1.0  
2019-08-29           1.0            0.0         1.0  
2019-10-16           0.0           -1.0         0.0  
2019-10-17           0.0            0.0        -1.0  
2019-10-31           1.0            1.0         0.0  
2019-11-01           1.0            0.0         1.0  
2019-11-15           0.0           -1.0         0.0  
2019-11-18           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-02-03           0.0           -1.0         0.0  
2020-02-04           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_023_SlowMA_45_FastMA_05
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-25     1811.99      1802.20  1762.284  1758.767333   3.516667   
2019-01-28     1787.62      1813.60  1772.952  1759.514000  13.438000   
2019-03-04     1723.66      1707.82  1788.134  1795.824889  -7.690889   
2019-03-05     1715.00      1745.93  1754.174  1796.450000 -42.276000   
2019-04-12     1827.87      1833.07  1808.170  1799.200222   8.969778   
2019-04-15     1834.00      1846.23  1819.672  1798.647778  21.024222   
2019-05-09     1729.43      1736.03  1779.448  1789.812222 -10.364222   
2019-05-10     1825.00      1829.85  1780.604  1792.142000 -11.538000   
2019-05-16     1790.00      1803.31  1798.704  1797.502889   1.201111   
2019-05-17     1786.37      1787.29  1790.192  1798.467556  -8.275556   
2019-05-20     1769.73      1752.23  1785.186  1798.468889 -13.282889   
2019-06-13     1802.05      1809.52  1794.292  1788.770444   5.521556   
2019-06-14     1808.20      1775.50  1793.734  1788.092667   5.641333   
2019-08-06     1799.20      1786.52  1837.534  1856.022667 -18.488667   
2019-08-07     1758.40      1821.56  1824.524  1857.678889 -33.154889   
2019-08-12     1900.44      1916.89  1876.734  1868.288667   8.445333   
2019-08-13     1907.67      1943.19  1908.068  1871.890222  36.177778   
2019-10-08     1937.05      1938.19  1955.168  1964.290222  -9.122222   
2019-10-09     1953.72      1943.33  1955.546  1967.774889 -12.228889   
2019-10-15     1992.21      2016.39  1977.712  1975.510000   2.202000   
2019-10-16     2016.80      2027.63  1994.572  1977.386444  17.185556   
2019-11-07     1942.20      1849.93  1985.430  2007.256444 -21.826444   
2019-11-08     1941.00      1879.19  1954.864  2005.291111 -50.427111   
2019-12-16     1983.47      1995.02  1949.522  1947.937556   1.584444   
2019-12-17     2000.00      2001.87  1968.970  1948.229111  20.740889   
2020-01-27     1906.41      1908.89  1971.172  1986.318667 -15.146667   
2020-01-28     1914.67      1917.45  1956.548  1987.777111 -31.229111   
2020-04-29     1487.83      1520.53  1417.122  1415.046222   2.075778   
2020-04-30     1514.53      1480.57  1441.236  1410.654444  30.581556   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-25           1.0            1.0         0.0  
2019-01-28           1.0            0.0         1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-05           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           0.0           -1.0         1.0  
2019-05-20           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-06           0.0           -1.0         0.0  
2019-08-07           0.0            0.0        -1.0  
2019-08-12           1.0            1.0         0.0  
2019-08-13           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-15           1.0            1.0         0.0  
2019-10-16           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-04-29           1.0            1.0         0.0  
2020-04-30           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_024_SlowMA_45_FastMA_10
            open_price  close_price   fast_ma      slow_ma  ma_change  \
date                                                                    
2019-01-30     1825.33      1818.70  1765.760  1762.106667   3.653333   
2019-01-31     1820.37      1832.81  1780.984  1763.634000  17.350000   
2019-03-07     1746.50      1725.01  1796.378  1797.302889  -0.924889   
2019-03-08     1708.04      1715.82  1776.908  1797.172222 -20.264222   
2019-04-16     1851.80      1841.70  1805.376  1798.130000   7.246000   
2019-04-17     1848.63      1839.79  1811.862  1796.896667  14.965333   
2019-05-14     1787.12      1793.67  1793.554  1795.368889  -1.814889   
2019-05-15     1778.60      1789.43  1789.545  1796.556222  -7.011222   
2019-06-19     1812.00      1842.06  1793.428  1786.638667   6.789333   
2019-06-20     1862.07      1861.31  1804.073  1787.074444  16.998556   
2019-08-14     1908.56      1891.19  1873.259  1873.836000  -0.577000   
2019-08-15     1900.03      1904.67  1875.740  1876.186444  -0.446444   
2019-08-16     1929.00      1922.19  1883.351  1878.690222   4.660778   
2019-08-19     1944.87      1943.73  1898.864  1882.428667  16.435333   
2019-10-08     1937.05      1938.19  1963.271  1964.290222  -1.019222   
2019-10-09     1953.72      1943.33  1958.251  1967.774889  -9.523889   
2019-10-17     2033.00      2028.53  1981.767  1980.438444   1.328556   
2019-10-18     2030.86      2013.53  1984.800  1982.857556   1.942444   
2019-11-08     1941.00      1879.19  2000.451  2005.291111  -4.840111   
2019-11-11     1869.00      1896.04  1984.350  2003.153111 -18.803111   
2019-12-18     2008.67      1991.51  1948.127  1947.676222   0.450778   
2019-12-19     1996.00      2003.12  1958.017  1947.131556  10.885444   
2020-01-29     1924.04      1893.95  1984.186  1988.235778  -4.049778   
2020-01-30     1871.42      1872.09  1964.879  1988.114889 -23.235889   
2020-04-30     1514.53      1480.57  1414.590  1410.654444   3.935556   
2020-05-01     1442.75      1448.79  1412.382  1405.964222   6.417778   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-30           1.0            1.0         0.0  
2019-01-31           1.0            0.0         1.0  
2019-03-07           0.0           -1.0         0.0  
2019-03-08           0.0            0.0        -1.0  
2019-04-16           1.0            1.0         0.0  
2019-04-17           1.0            0.0         1.0  
2019-05-14           0.0           -1.0         0.0  
2019-05-15           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-15           0.0            0.0        -1.0  
2019-08-16           1.0            1.0         0.0  
2019-08-19           1.0            0.0         1.0  
2019-10-08           0.0           -1.0         0.0  
2019-10-09           0.0            0.0        -1.0  
2019-10-17           1.0            1.0         0.0  
2019-10-18           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-18           1.0            1.0         0.0  
2019-12-19           1.0            0.0         1.0  
2020-01-29           0.0           -1.0         0.0  
2020-01-30           0.0            0.0        -1.0  
2020-04-30           1.0            1.0         0.0  
2020-05-01           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_025_SlowMA_45_FastMA_15
            open_price  close_price      fast_ma      slow_ma  ma_change  \
date                                                                       
2019-02-04     1840.39      1860.99  1771.970000  1765.209556   6.760444   
2019-02-05     1887.53      1902.26  1785.928667  1765.938667  19.990000   
2019-03-12     1709.72      1736.00  1797.198667  1798.621778  -1.423111   
2019-03-13     1740.44      1760.71  1786.168000  1799.708222 -13.540222   
2019-04-18     1847.64      1844.31  1800.370000  1795.215333   5.154667   
2019-04-22     1833.93      1844.17  1806.987333  1793.922889  13.064444   
2019-05-20     1769.73      1752.23  1794.852667  1798.468889  -3.616222   
2019-05-21     1762.34      1772.19  1789.332667  1798.821333  -9.488667   
2019-06-21     1859.36      1880.00  1789.205333  1787.968000   1.237333   
2019-06-24     1880.97      1870.81  1803.895333  1788.556889  15.338444   
2019-10-11     1984.30      1977.18  1967.745333  1971.719778  -3.974444   
2019-10-14     1964.52      1988.75  1966.368000  1973.298889  -6.930889   
2019-10-23     2019.66      2032.23  1991.344667  1989.017556   2.327111   
2019-10-24     2035.00      2043.75  1996.831333  1990.973111   5.858222   
2019-11-12     1901.35      1875.84  1993.886667  1999.977111  -6.090444   
2019-11-13     1855.59      1859.09  1982.344000  1995.731111 -13.387111   
2019-12-23     2026.01      2032.10  1956.084000  1947.427111   8.656889   
2019-12-24     2032.24      2044.00  1967.018667  1947.910667  19.108000   
2020-01-31     1865.93      1830.55  1985.558667  1986.626222  -1.067556   
2020-02-03     1847.15      1839.03  1969.034000  1985.550000 -16.516000   
2020-04-30     1514.53      1480.57  1417.932000  1410.654444   7.277556   
2020-05-01     1442.75      1448.79  1419.808667  1405.964222  13.844444   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-04           1.0            1.0         0.0  
2019-02-05           1.0            0.0         1.0  
2019-03-12           0.0           -1.0         0.0  
2019-03-13           0.0            0.0        -1.0  
2019-04-18           1.0            1.0         0.0  
2019-04-22           1.0            0.0         1.0  
2019-05-20           0.0           -1.0         0.0  
2019-05-21           0.0            0.0        -1.0  
2019-06-21           1.0            1.0         0.0  
2019-06-24           1.0            0.0         1.0  
2019-10-11           0.0           -1.0         0.0  
2019-10-14           0.0            0.0        -1.0  
2019-10-23           1.0            1.0         0.0  
2019-10-24           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-01-31           0.0           -1.0         0.0  
2020-02-03           0.0            0.0        -1.0  
2020-04-30           1.0            1.0         0.0  
2020-05-01           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_026_SlowMA_45_FastMA_20
            open_price  close_price    fast_ma      slow_ma  ma_change  \
date                                                                     
2019-02-06     1895.94      1906.93  1769.0725  1766.867111   2.205389   
2019-02-07     1892.10      1877.06  1780.4510  1766.537778  13.913222   
2019-03-18     1757.71      1756.33  1795.3285  1805.011333  -9.682833   
2019-03-19     1751.05      1764.03  1786.7550  1807.192222 -20.437222   
2019-04-23     1849.23      1887.73  1799.3660  1792.904222   6.461778   
2019-04-24     1887.14      1867.28  1804.2865  1791.388222  12.898278   
2019-05-23     1746.95      1716.93  1795.0625  1797.121111  -2.058611   
2019-05-24     1731.52      1708.48  1787.0865  1795.657111  -8.570611   
2019-06-27     1835.00      1845.17  1794.2985  1786.816444   7.482056   
2019-06-28     1852.58      1874.71  1805.2230  1787.004222  18.218778   
2019-10-18     2030.86      2013.53  1979.5505  1982.857556  -3.307056   
2019-10-21     2022.68      2022.24  1980.1920  1985.080889  -4.888889   
2019-10-28     2053.02      2057.05  1997.3185  1996.791778   0.526722   
2019-10-29     2054.14      2042.80  2000.5570  1999.591556   0.965444   
2019-11-13     1855.59      1859.09  1992.7370  1995.731111  -2.994111   
2019-11-14     1855.39      1865.55  1984.5880  1991.823111  -7.235111   
2019-12-24     2032.24      2044.00  1948.3820  1947.910667   0.471333   
2019-12-26     2049.34      2064.32  1957.2250  1948.827778   8.397222   
2020-02-05     1898.70      1939.29  1978.6700  1985.401556  -6.731556   
2020-02-06     1958.90      1960.90  1973.5700  1987.100667 -13.530667   
2020-05-04     1415.73      1413.30  1411.8090  1399.689556  12.119444   
2020-05-05     1443.25      1393.20  1413.6350  1392.227778  21.407222   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-06           1.0            1.0         0.0  
2019-02-07           1.0            0.0         1.0  
2019-03-18           0.0           -1.0         0.0  
2019-03-19           0.0            0.0        -1.0  
2019-04-23           1.0            1.0         0.0  
2019-04-24           1.0            0.0         1.0  
2019-05-23           0.0           -1.0         0.0  
2019-05-24           0.0            0.0        -1.0  
2019-06-27           1.0            1.0         0.0  
2019-06-28           1.0            0.0         1.0  
2019-10-18           0.0           -1.0         0.0  
2019-10-21           0.0            0.0        -1.0  
2019-10-28           1.0            1.0         0.0  
2019-10-29           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-24           1.0            1.0         0.0  
2019-12-26           1.0            0.0         1.0  
2020-02-05           0.0           -1.0         0.0  
2020-02-06           0.0            0.0        -1.0  
2020-05-04           1.0            1.0         0.0  
2020-05-05           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_027_SlowMA_50_FastMA_05
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-28     1787.62      1813.60  1772.952  1770.0154     2.9366   
2019-01-29     1816.62      1808.80  1792.916  1767.9898    24.9262   
2019-03-05     1715.00      1745.93  1754.174  1784.3340   -30.1600   
2019-03-06     1748.37      1751.62  1723.298  1785.2628   -61.9648   
2019-04-12     1827.87      1833.07  1808.170  1806.9642     1.2058   
2019-04-15     1834.00      1846.23  1819.672  1807.1496    12.5224   
2019-05-09     1729.43      1736.03  1779.448  1783.1608    -3.7128   
2019-05-10     1825.00      1829.85  1780.604  1785.8170    -5.2130   
2019-05-16     1790.00      1803.31  1798.704  1790.7014     8.0026   
2019-05-17     1786.37      1787.29  1790.192  1791.9470    -1.7550   
2019-05-20     1769.73      1752.23  1785.186  1792.6752    -7.4892   
2019-06-13     1802.05      1809.52  1794.292  1788.0568     6.2352   
2019-06-14     1808.20      1775.50  1793.734  1788.0682     5.6658   
2019-08-07     1758.40      1821.56  1824.524  1840.1648   -15.6408   
2019-08-08     1900.00      1941.01  1836.754  1845.2666    -8.5126   
2019-08-09     1926.54      1917.69  1851.076  1850.1592     0.9168   
2019-08-12     1900.44      1916.89  1876.734  1855.3726    21.3614   
2019-10-10     1942.69      1962.91  1955.838  1956.2768    -0.4388   
2019-10-11     1984.30      1977.18  1954.634  1958.2232    -3.5892   
2019-10-14     1964.52      1988.75  1962.072  1961.0766     0.9954   
2019-10-15     1992.21      2016.39  1977.712  1965.6324    12.0796   
2019-11-07     1942.20      1849.93  1985.430  2002.9020   -17.4720   
2019-11-08     1941.00      1879.19  1954.864  2001.3430   -46.4790   
2019-12-16     1983.47      1995.02  1949.522  1948.6072     0.9148   
2019-12-17     2000.00      2001.87  1968.970  1949.6134    19.3566   
2020-01-27     1906.41      1908.89  1971.172  1972.8226    -1.6506   
2020-01-28     1914.67      1917.45  1956.548  1973.9898   -17.4418   
2020-05-01     1442.75      1448.79  1458.440  1441.0856    17.3544   
2020-05-04     1415.73      1413.30  1460.502  1430.7772    29.7248   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-28           1.0            1.0         0.0  
2019-01-29           1.0            0.0         1.0  
2019-03-05           0.0           -1.0         0.0  
2019-03-06           0.0            0.0        -1.0  
2019-04-12           1.0            1.0         0.0  
2019-04-15           1.0            0.0         1.0  
2019-05-09           0.0           -1.0         0.0  
2019-05-10           0.0            0.0        -1.0  
2019-05-16           1.0            1.0         0.0  
2019-05-17           0.0           -1.0         1.0  
2019-05-20           0.0            0.0        -1.0  
2019-06-13           1.0            1.0         0.0  
2019-06-14           1.0            0.0         1.0  
2019-08-07           0.0           -1.0         0.0  
2019-08-08           0.0            0.0        -1.0  
2019-08-09           1.0            1.0         0.0  
2019-08-12           1.0            0.0         1.0  
2019-10-10           0.0           -1.0         0.0  
2019-10-11           0.0            0.0        -1.0  
2019-10-14           1.0            1.0         0.0  
2019-10-15           1.0            0.0         1.0  
2019-11-07           0.0           -1.0         0.0  
2019-11-08           0.0            0.0        -1.0  
2019-12-16           1.0            1.0         0.0  
2019-12-17           1.0            0.0         1.0  
2020-01-27           0.0           -1.0         0.0  
2020-01-28           0.0            0.0        -1.0  
2020-05-01           1.0            1.0         0.0  
2020-05-04           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_028_SlowMA_50_FastMA_10
            open_price  close_price   fast_ma    slow_ma  ma_change  \
date                                                                  
2019-01-31     1820.37      1832.81  1780.984  1765.4752    15.5088   
2019-02-01     1824.05      1836.96  1792.229  1765.1080    27.1210   
2019-03-08     1708.04      1715.82  1776.908  1789.0750   -12.1670   
2019-03-11     1721.69      1709.90  1758.895  1789.2080   -30.3130   
2019-04-17     1848.63      1839.79  1811.862  1805.5144     6.3476   
2019-04-18     1847.64      1844.31  1818.233  1804.2620    13.9710   
2019-05-15     1778.60      1789.43  1789.545  1789.6676    -0.1226   
2019-05-16     1790.00      1803.31  1789.076  1790.7014    -1.6254   
2019-06-19     1812.00      1842.06  1793.428  1789.9420     3.4860   
2019-06-20     1862.07      1861.31  1804.073  1791.2788    12.7942   
2019-11-08     1941.00      1879.19  2000.451  2001.3430    -0.8920   
2019-11-11     1869.00      1896.04  1984.350  1999.9356   -15.5856   
2019-12-19     1996.00      2003.12  1958.017  1951.8756     6.1414   
2019-12-20     2017.00      2023.26  1967.316  1953.0826    14.2334   
2020-01-30     1871.42      1872.09  1964.879  1975.0232   -10.1442   
2020-01-31     1865.93      1830.55  1942.459  1974.8736   -32.4146   
2020-05-06     1397.46      1378.91  1420.038  1415.8370     4.2010   
2020-05-07     1392.26      1443.91  1428.429  1411.1512    17.2778   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-31           1.0            1.0         0.0  
2019-02-01           1.0            0.0         1.0  
2019-03-08           0.0           -1.0         0.0  
2019-03-11           0.0            0.0        -1.0  
2019-04-17           1.0            1.0         0.0  
2019-04-18           1.0            0.0         1.0  
2019-05-15           0.0           -1.0         0.0  
2019-05-16           0.0            0.0        -1.0  
2019-06-19           1.0            1.0         0.0  
2019-06-20           1.0            0.0         1.0  
2019-11-08           0.0           -1.0         0.0  
2019-11-11           0.0            0.0        -1.0  
2019-12-19           1.0            1.0         0.0  
2019-12-20           1.0            0.0         1.0  
2020-01-30           0.0           -1.0         0.0  
2020-01-31           0.0            0.0        -1.0  
2020-05-06           1.0            1.0         0.0  
2020-05-07           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_029_SlowMA_50_FastMA_15
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-02-04     1840.39      1860.99  1771.970000  1766.7278   5.242200   
2019-02-05     1887.53      1902.26  1785.928667  1769.7644  16.164267   
2019-03-13     1740.44      1760.71  1786.168000  1790.4696  -4.301600   
2019-03-14     1768.83      1743.88  1775.339333  1790.8988 -15.559467   
2019-04-22     1833.93      1844.17  1806.987333  1803.6042   3.383133   
2019-04-23     1849.23      1887.73  1815.554000  1803.9370  11.617000   
2019-05-21     1762.34      1772.19  1789.332667  1793.9210  -4.588333   
2019-05-22     1757.35      1745.02  1783.699333  1794.1014 -10.402067   
2019-06-24     1880.97      1870.81  1803.895333  1793.8032  10.092133   
2019-06-25     1880.83      1845.47  1810.458000  1794.0512  16.406800   
2019-10-16     2016.80      2027.63  1970.358000  1970.4546  -0.096600   
2019-10-17     2033.00      2028.53  1973.696667  1974.5940  -0.897333   
2019-10-18     2030.86      2013.53  1978.315333  1976.0444   2.270933   
2019-10-21     2022.68      2022.24  1982.290667  1978.1354   4.155267   
2019-11-12     1901.35      1875.84  1993.886667  1998.6168  -4.730133   
2019-11-13     1855.59      1859.09  1982.344000  1996.6228 -14.278800   
2019-12-23     2026.01      2032.10  1956.084000  1954.1810   1.903000   
2019-12-24     2032.24      2044.00  1967.018667  1955.2860  11.732667   
2020-02-03     1847.15      1839.03  1969.034000  1974.7482  -5.714200   
2020-02-04     1857.06      1864.51  1954.634667  1975.0020 -20.367333   
2020-05-07     1392.26      1443.91  1414.934000  1411.1512   3.782800   
2020-05-08     1416.69      1430.83  1412.264667  1406.5708   5.693867   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-04           1.0            1.0         0.0  
2019-02-05           1.0            0.0         1.0  
2019-03-13           0.0           -1.0         0.0  
2019-03-14           0.0            0.0        -1.0  
2019-04-22           1.0            1.0         0.0  
2019-04-23           1.0            0.0         1.0  
2019-05-21           0.0           -1.0         0.0  
2019-05-22           0.0            0.0        -1.0  
2019-06-24           1.0            1.0         0.0  
2019-06-25           1.0            0.0         1.0  
2019-10-16           0.0           -1.0         0.0  
2019-10-17           0.0            0.0        -1.0  
2019-10-18           1.0            1.0         0.0  
2019-10-21           1.0            0.0         1.0  
2019-11-12           0.0           -1.0         0.0  
2019-11-13           0.0            0.0        -1.0  
2019-12-23           1.0            1.0         0.0  
2019-12-24           1.0            0.0         1.0  
2020-02-03           0.0           -1.0         0.0  
2020-02-04           0.0            0.0        -1.0  
2020-05-07           1.0            1.0         0.0  
2020-05-08           1.0            0.0         1.0  

List the signal change and entry/exit points for SMA_030_SlowMA_50_FastMA_20
            open_price  close_price    fast_ma    slow_ma  ma_change  \
date                                                                   
2019-02-07     1892.10      1877.06  1780.4510  1774.9546     5.4964   
2019-02-08     1892.37      1871.09  1790.1390  1776.3276    13.8114   
2019-03-19     1751.05      1764.03  1786.7550  1794.3020    -7.5470   
2019-03-20     1766.78      1774.43  1779.1680  1795.5542   -16.3862   
2019-04-24     1887.14      1867.28  1804.2865  1803.9826     0.3039   
2019-04-25     1870.65      1866.26  1809.9940  1803.4020     6.5920   
2019-05-24     1731.52      1708.48  1787.0865  1792.5178    -5.4313   
2019-05-28     1707.59      1685.80  1777.5605  1791.1904   -13.6299   
2019-06-27     1835.00      1845.17  1794.2985  1793.8004     0.4981   
2019-06-28     1852.58      1874.71  1805.2230  1794.4988    10.7242   
2019-11-13     1855.59      1859.09  1992.7370  1996.6228    -3.8858   
2019-11-14     1855.39      1865.55  1984.5880  1994.0450    -9.4570   
2019-12-26     2049.34      2064.32  1957.2250  1956.2446     0.9804   
2019-12-27     2063.00      2072.54  1965.5295  1957.1428     8.3867   
2020-02-06     1958.90      1960.90  1973.5700  1977.9890    -4.4190   
2020-02-07     1950.23      1909.59  1964.8350  1978.2300   -13.3950   
2020-05-07     1392.26      1443.91  1417.3545  1411.1512     6.2033   
2020-05-08     1416.69      1430.83  1417.8640  1406.5708    11.2932   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-02-07           1.0            1.0         0.0  
2019-02-08           1.0            0.0         1.0  
2019-03-19           0.0           -1.0         0.0  
2019-03-20           0.0            0.0        -1.0  
2019-04-24           1.0            1.0         0.0  
2019-04-25           1.0            0.0         1.0  
2019-05-24           0.0           -1.0         0.0  
2019-05-28           0.0            0.0        -1.0  
2019-06-27           1.0            1.0         0.0  
2019-06-28           1.0            0.0         1.0  
2019-11-13           0.0           -1.0         0.0  
2019-11-14           0.0            0.0        -1.0  
2019-12-26           1.0            1.0         0.0  
2019-12-27           1.0            0.0         1.0  
2020-02-06           0.0           -1.0         0.0  
2020-02-07           0.0            0.0        -1.0  
2020-05-07           1.0            1.0         0.0  
2020-05-08           1.0            0.0         1.0  

In [15]:
if verbose:
    for key in model_collection:
        graph_data = model_collection[key].copy()
        title_string = "Simple Moving Average Crossover Model for " + key
        fig = plt.figure(figsize=(16,9))
        ylabel = stock_symbol + ' price in $'
        ax1 = fig.add_subplot(111, ylabel=ylabel, title=title_string)
        graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
        graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
        graph_data['close_price'].plot(ax=ax1, color='g')
        ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close_price[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
        ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close_price[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
        plt.legend(loc='upper left')
        plt.show()

Task 4. Back-test Model

In [16]:
def trading_portfolio_generation(initial_fund, trading_model):
    # Construct a portfolio to track the transactions and returns
    portfolio = pd.DataFrame(index=trading_model.index, columns=['trade_action', 'qty_onhand', 'cost_basis', 'sold_transaction', 'gain_loss', 'cash_onhand', 'position_value', 'total_position', 'accumu_return'])
    portfolio.iloc[0]['trade_action'] = 0
    portfolio.iloc[0]['qty_onhand'] = 0
    portfolio.iloc[0]['cost_basis'] = 0.00
    portfolio.iloc[0]['sold_transaction'] = 0.00
    portfolio.iloc[0]['gain_loss'] = 0.00
    portfolio.iloc[0]['cash_onhand'] = initial_capital
    portfolio.iloc[0]['position_value'] = 0.00
    portfolio.iloc[0]['total_position'] = initial_capital
    portfolio.iloc[0]['accumu_return'] = portfolio.iloc[0]['total_position'] - initial_fund
    recent_cost = 0

    # The conditional parameters below determine how the trading strategy will be carried out
    for i in range(1, len(portfolio)):
        if (trading_model.iloc[i]['entry_exit'] == 1) and (portfolio.iloc[i-1]['qty_onhand'] == 0):
            portfolio.iloc[i]['trade_action'] = 1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['sold_transaction'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand'] - portfolio.iloc[i]['cost_basis']
            recent_cost = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action']
            if verbose: print('BOUGHT QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model.iloc[i]['open_price'])
        elif (trading_model.iloc[i]['entry_exit'] == -1) and (portfolio.iloc[i-1]['qty_onhand'] > 0):
            portfolio.iloc[i]['trade_action'] = -1
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand'] + portfolio.iloc[i]['trade_action']
            portfolio.iloc[i]['cost_basis'] = 0.00
            portfolio.iloc[i]['sold_transaction'] = trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action'] * -1
            portfolio.iloc[i]['gain_loss'] = (recent_cost + (trading_model.iloc[i]['open_price'] * portfolio.iloc[i]['trade_action'])) * -1
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand'] + portfolio.iloc[i]['sold_transaction']
            recent_cost = 0.00
            if verbose: print('SOLD QTY:', portfolio.iloc[i]['trade_action'], 'on', portfolio.index[i], 'at the price of', trading_model.iloc[i]['open_price'])
        else:
            portfolio.iloc[i]['trade_action'] = 0
            portfolio.iloc[i]['qty_onhand'] = portfolio.iloc[i-1]['qty_onhand']
            portfolio.iloc[i]['cost_basis'] = portfolio.iloc[i-1]['cost_basis']
            portfolio.iloc[i]['sold_transaction'] = 0.00
            portfolio.iloc[i]['gain_loss'] = 0.00
            portfolio.iloc[i]['cash_onhand'] = portfolio.iloc[i-1]['cash_onhand']
        portfolio.iloc[i]['position_value'] = trading_model.iloc[i]['close_price'] * portfolio.iloc[i]['qty_onhand']
        portfolio.iloc[i]['total_position'] = portfolio.iloc[i]['cash_onhand'] + portfolio.iloc[i]['position_value']
        portfolio.iloc[i]['accumu_return'] = portfolio.iloc[i]['total_position'] - initial_fund

    return portfolio
In [17]:
portfolio_collection = {}

# Build dataframe for reporting model performance summary
performance_summary = pd.DataFrame(columns=['model_name','return_value','return_percent'])

for key in model_collection:
    print('Processing portfolio for model:', key)
    portfolio_collection[key] = trading_portfolio_generation(initial_capital, model_collection[key])
    trade_transactions = portfolio_collection[key][portfolio_collection[key].trade_action != 0]
    print(trade_transactions)
    print('Accumulated profit/loss for one share of stock with initial capital of $%.0f at the end of modeling period: $%.2f' % (initial_capital, portfolio_collection[key].accumu_return[-1]))
    if initial_capital != 0:
        return_percentage = portfolio_collection[key].accumu_return[-1] / initial_capital * 100
        print('Accumulated return percentage based on the initial capital investment: %.2f%%' % (return_percentage))
    else:
        return_percentage = None
    if trade_transactions.iloc[-1]['trade_action'] == 1:
        print('The current status of the model is:', 'Holding a position since', trade_transactions.index.tolist()[-1], '\n')
    else:
        print('The current status of the model is:', 'Waiting to enter since', trade_transactions.index.tolist()[-1], '\n')
    performance_summary = performance_summary.append({'model_name': key, 'return_value': portfolio_collection[key].accumu_return[-1],
                                                      'return_percent': return_percentage}, ignore_index=True)
Processing portfolio for model: SMA_001_SlowMA_10_FastMA_05
BOUGHT QTY: 1 on 2019-01-18 00:00:00 at the price of 1747.02
SOLD QTY: -1 on 2019-02-27 00:00:00 at the price of 1906.0
BOUGHT QTY: 1 on 2019-03-14 00:00:00 at the price of 1768.83
SOLD QTY: -1 on 2019-03-28 00:00:00 at the price of 1759.99
BOUGHT QTY: 1 on 2019-04-04 00:00:00 at the price of 1775.31
SOLD QTY: -1 on 2019-05-03 00:00:00 at the price of 1816.17
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-23 00:00:00 at the price of 1746.95
BOUGHT QTY: 1 on 2019-06-07 00:00:00 at the price of 1765.25
SOLD QTY: -1 on 2019-07-12 00:00:00 at the price of 1878.02
BOUGHT QTY: 1 on 2019-07-22 00:00:00 at the price of 1883.65
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-08-29 00:00:00 at the price of 1966.43
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-09-24 00:00:00 at the price of 2012.82
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-05 00:00:00 at the price of 2008.99
BOUGHT QTY: 1 on 2019-11-26 00:00:00 at the price of 1899.7
SOLD QTY: -1 on 2020-01-21 00:00:00 at the price of 2006.0
BOUGHT QTY: 1 on 2020-02-10 00:00:00 at the price of 1901.69
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-03-30 00:00:00 at the price of 1261.27
SOLD QTY: -1 on 2020-04-06 00:00:00 at the price of 1303.28
BOUGHT QTY: 1 on 2020-04-09 00:00:00 at the price of 1424.76
SOLD QTY: -1 on 2020-04-23 00:00:00 at the price of 1354.05
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
SOLD QTY: -1 on 2020-05-08 00:00:00 at the price of 1416.69
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-15 00:00:00 at the price of 1567.66
BOUGHT QTY: 1 on 2020-06-25 00:00:00 at the price of 1585.81
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-18            1          1    1747.02                0         0   
2019-02-27           -1          0          0             1906    158.98   
2019-03-14            1          1    1768.83                0         0   
2019-03-28           -1          0          0          1759.99     -8.84   
2019-04-04            1          1    1775.31                0         0   
2019-05-03           -1          0          0          1816.17     40.86   
2019-05-17            1          1    1786.37                0         0   
2019-05-23           -1          0          0          1746.95    -39.42   
2019-06-07            1          1    1765.25                0         0   
2019-07-12           -1          0          0          1878.02    112.77   
2019-07-22            1          1    1883.65                0         0   
2019-08-05           -1          0          0          1819.98    -63.67   
2019-08-13            1          1    1907.67                0         0   
2019-08-29           -1          0          0          1966.43     58.76   
2019-09-03            1          1    1956.56                0         0   
2019-09-24           -1          0          0          2012.82     56.26   
2019-10-16            1          1     2016.8                0         0   
2019-11-05           -1          0          0          2008.99     -7.81   
2019-11-26            1          1     1899.7                0         0   
2020-01-21           -1          0          0             2006     106.3   
2020-02-10            1          1    1901.69                0         0   
2020-02-25           -1          0          0             1803    -98.69   
2020-03-30            1          1    1261.27                0         0   
2020-04-06           -1          0          0          1303.28     42.01   
2020-04-09            1          1    1424.76                0         0   
2020-04-23           -1          0          0          1354.05    -70.71   
2020-04-30            1          1    1514.53                0         0   
2020-05-08           -1          0          0          1416.69    -97.84   
2020-05-19            1          1    1556.29                0         0   
2020-06-15           -1          0          0          1567.66     11.37   
2020-06-25            1          1    1585.81                0         0   
2020-06-26           -1          0          0           1597.3     11.49   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-18    -1747.02        1760.26          13.24         13.24  
2019-02-27      158.98              0         158.98        158.98  
2019-03-14    -1609.85        1743.88         134.03        134.03  
2019-03-28      150.14              0         150.14        150.14  
2019-04-04    -1625.17         1780.6         155.43        155.43  
2019-05-03         191              0            191           191  
2019-05-17    -1595.37        1787.29         191.92        191.92  
2019-05-23      151.58              0         151.58        151.58  
2019-06-07    -1613.67        1778.29         164.62        164.62  
2019-07-12      264.35              0         264.35        264.35  
2019-07-22     -1619.3         1893.7          274.4         274.4  
2019-08-05      200.68              0         200.68        200.68  
2019-08-13    -1706.99        1943.19          236.2         236.2  
2019-08-29      259.44              0         259.44        259.44  
2019-09-03    -1697.12        1941.78         244.66        244.66  
2019-09-24       315.7              0          315.7         315.7  
2019-10-16     -1701.1        2027.63         326.53        326.53  
2019-11-05      307.89              0         307.89        307.89  
2019-11-26    -1591.81        1887.46         295.65        295.65  
2020-01-21      414.19              0         414.19        414.19  
2020-02-10     -1487.5        1886.64         399.14        399.14  
2020-02-25       315.5              0          315.5         315.5  
2020-03-30     -945.77        1308.23         362.46        362.46  
2020-04-06      357.51              0         357.51        357.51  
2020-04-09    -1067.25        1420.64         353.39        353.39  
2020-04-23       286.8              0          286.8         286.8  
2020-04-30    -1227.73        1480.57         252.84        252.84  
2020-05-08      188.96              0         188.96        188.96  
2020-05-19    -1367.33        1547.56         180.23        180.23  
2020-06-15      200.33              0         200.33        200.33  
2020-06-25    -1385.48        1615.39         229.91        229.91  
2020-06-26      211.82              0         211.82        211.82  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $211.82
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_002_SlowMA_15_FastMA_05
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-03-20 00:00:00 at the price of 1766.78
SOLD QTY: -1 on 2019-03-29 00:00:00 at the price of 1736.6
BOUGHT QTY: 1 on 2019-04-01 00:00:00 at the price of 1755.08
SOLD QTY: -1 on 2019-04-02 00:00:00 at the price of 1766.03
BOUGHT QTY: 1 on 2019-04-05 00:00:00 at the price of 1788.03
SOLD QTY: -1 on 2019-05-03 00:00:00 at the price of 1816.17
BOUGHT QTY: 1 on 2019-06-10 00:00:00 at the price of 1782.57
SOLD QTY: -1 on 2019-07-15 00:00:00 at the price of 1881.89
BOUGHT QTY: 1 on 2019-07-25 00:00:00 at the price of 1911.99
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-08-29 00:00:00 at the price of 1966.43
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-09-26 00:00:00 at the price of 1994.08
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-06 00:00:00 at the price of 2018.56
BOUGHT QTY: 1 on 2019-11-27 00:00:00 at the price of 1893.0
SOLD QTY: -1 on 2020-01-21 00:00:00 at the price of 2006.0
BOUGHT QTY: 1 on 2020-02-12 00:00:00 at the price of 1923.95
SOLD QTY: -1 on 2020-02-26 00:00:00 at the price of 1731.22
BOUGHT QTY: 1 on 2020-03-31 00:00:00 at the price of 1303.01
SOLD QTY: -1 on 2020-04-27 00:00:00 at the price of 1374.93
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
SOLD QTY: -1 on 2020-05-11 00:00:00 at the price of 1427.02
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-16 00:00:00 at the price of 1716.32
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-01           -1          0          0           1708.2    -34.98   
2019-03-20            1          1    1766.78                0         0   
2019-03-29           -1          0          0           1736.6    -30.18   
2019-04-01            1          1    1755.08                0         0   
2019-04-02           -1          0          0          1766.03     10.95   
2019-04-05            1          1    1788.03                0         0   
2019-05-03           -1          0          0          1816.17     28.14   
2019-06-10            1          1    1782.57                0         0   
2019-07-15           -1          0          0          1881.89     99.32   
2019-07-25            1          1    1911.99                0         0   
2019-08-05           -1          0          0          1819.98    -92.01   
2019-08-14            1          1    1908.56                0         0   
2019-08-29           -1          0          0          1966.43     57.87   
2019-09-03            1          1    1956.56                0         0   
2019-09-26           -1          0          0          1994.08     37.52   
2019-10-16            1          1     2016.8                0         0   
2019-11-06           -1          0          0          2018.56      1.76   
2019-11-27            1          1       1893                0         0   
2020-01-21           -1          0          0             2006       113   
2020-02-12            1          1    1923.95                0         0   
2020-02-26           -1          0          0          1731.22   -192.73   
2020-03-31            1          1    1303.01                0         0   
2020-04-27           -1          0          0          1374.93     71.92   
2020-04-30            1          1    1514.53                0         0   
2020-05-11           -1          0          0          1427.02    -87.51   
2020-05-20            1          1    1578.52                0         0   
2020-06-16           -1          0          0          1716.32     137.8   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-01      -34.98              0         -34.98        -34.98  
2019-03-20    -1801.76        1774.43         -27.33        -27.33  
2019-03-29      -65.16              0         -65.16        -65.16  
2019-04-01    -1820.24        1759.23         -61.01        -61.01  
2019-04-02      -54.21              0         -54.21        -54.21  
2019-04-05    -1842.24        1769.45         -72.79        -72.79  
2019-05-03      -26.07              0         -26.07        -26.07  
2019-06-10    -1808.64        1781.12         -27.52        -27.52  
2019-07-15       73.25              0          73.25         73.25  
2019-07-25    -1838.74        1926.13          87.39         87.39  
2019-08-05      -18.76              0         -18.76        -18.76  
2019-08-14    -1927.32        1891.19         -36.13        -36.13  
2019-08-29       39.11              0          39.11         39.11  
2019-09-03    -1917.45        1941.78          24.33         24.33  
2019-09-26       76.63              0          76.63         76.63  
2019-10-16    -1940.17        2027.63          87.46         87.46  
2019-11-06       78.39              0          78.39         78.39  
2019-11-27    -1814.61        1906.45          91.84         91.84  
2020-01-21      191.39              0         191.39        191.39  
2020-02-12    -1732.56        1960.36          227.8         227.8  
2020-02-26       -1.34              0          -1.34         -1.34  
2020-03-31    -1304.35        1345.32          40.97         40.97  
2020-04-27       70.58              0          70.58         70.58  
2020-04-30    -1443.95        1480.57          36.62         36.62  
2020-05-11      -16.93              0         -16.93        -16.93  
2020-05-20    -1595.45        1599.15            3.7           3.7  
2020-06-16      120.87              0         120.87        120.87  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $120.87
The current status of the model is: Waiting to enter since 2020-06-16 00:00:00 

Processing portfolio for model: SMA_003_SlowMA_15_FastMA_10
BOUGHT QTY: 1 on 2019-01-10 00:00:00 at the price of 1640.0
SOLD QTY: -1 on 2019-01-16 00:00:00 at the price of 1693.42
BOUGHT QTY: 1 on 2019-01-24 00:00:00 at the price of 1748.98
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-03-21 00:00:00 at the price of 1765.8
SOLD QTY: -1 on 2019-04-03 00:00:00 at the price of 1778.47
BOUGHT QTY: 1 on 2019-04-08 00:00:00 at the price of 1767.92
SOLD QTY: -1 on 2019-05-08 00:00:00 at the price of 1765.01
BOUGHT QTY: 1 on 2019-06-12 00:00:00 at the price of 1804.17
SOLD QTY: -1 on 2019-07-19 00:00:00 at the price of 1896.03
BOUGHT QTY: 1 on 2019-07-26 00:00:00 at the price of 1940.0
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-03 00:00:00 at the price of 1865.39
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-18 00:00:00 at the price of 1972.25
SOLD QTY: -1 on 2020-02-27 00:00:00 at the price of 1612.98
BOUGHT QTY: 1 on 2020-04-06 00:00:00 at the price of 1303.28
SOLD QTY: -1 on 2020-04-29 00:00:00 at the price of 1487.83
BOUGHT QTY: 1 on 2020-05-06 00:00:00 at the price of 1397.46
SOLD QTY: -1 on 2020-05-14 00:00:00 at the price of 1348.74
BOUGHT QTY: 1 on 2020-05-21 00:00:00 at the price of 1605.0
SOLD QTY: -1 on 2020-06-22 00:00:00 at the price of 1609.74
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-10            1          1       1640                0         0   
2019-01-16           -1          0          0          1693.42     53.42   
2019-01-24            1          1    1748.98                0         0   
2019-03-04           -1          0          0          1723.66    -25.32   
2019-03-21            1          1     1765.8                0         0   
2019-04-03           -1          0          0          1778.47     12.67   
2019-04-08            1          1    1767.92                0         0   
2019-05-08           -1          0          0          1765.01     -2.91   
2019-06-12            1          1    1804.17                0         0   
2019-07-19           -1          0          0          1896.03     91.86   
2019-07-26            1          1       1940                0         0   
2019-08-07           -1          0          0           1758.4    -181.6   
2019-08-20            1          1    1942.51                0         0   
2019-09-30           -1          0          0             1953     10.49   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-03            1          1    1865.39                0         0   
2020-01-23           -1          0          0          1986.24    120.85   
2020-02-18            1          1    1972.25                0         0   
2020-02-27           -1          0          0          1612.98   -359.27   
2020-04-06            1          1    1303.28                0         0   
2020-04-29           -1          0          0          1487.83    184.55   
2020-05-06            1          1    1397.46                0         0   
2020-05-14           -1          0          0          1348.74    -48.72   
2020-05-21            1          1       1605                0         0   
2020-06-22           -1          0          0          1609.74      4.74   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-10       -1640        1677.33          37.33         37.33  
2019-01-16       53.42              0          53.42         53.42  
2019-01-24    -1695.56        1795.67         100.11        100.11  
2019-03-04        28.1              0           28.1          28.1  
2019-03-21     -1737.7        1774.36          36.66         36.66  
2019-04-03       40.77              0          40.77         40.77  
2019-04-08    -1727.15        1788.72          61.57         61.57  
2019-05-08       37.86              0          37.86         37.86  
2019-06-12    -1766.31         1798.9          32.59         32.59  
2019-07-19      129.72              0         129.72        129.72  
2019-07-26    -1810.28        1966.85         156.57        156.57  
2019-08-07      -51.88              0         -51.88        -51.88  
2019-08-20    -1994.39         1934.4         -59.99        -59.99  
2019-09-30      -41.39              0         -41.39        -41.39  
2019-10-17    -2074.39        2028.53         -45.86        -45.86  
2019-11-08     -133.39              0        -133.39       -133.39  
2019-12-03    -1998.78        1879.98         -118.8        -118.8  
2020-01-23      -12.54              0         -12.54        -12.54  
2020-02-18    -1984.79        1976.28          -8.51         -8.51  
2020-02-27     -371.81              0        -371.81       -371.81  
2020-04-06    -1675.09        1356.68        -318.41       -318.41  
2020-04-29     -187.26              0        -187.26       -187.26  
2020-05-06    -1584.72        1378.91        -205.81       -205.81  
2020-05-14     -235.98              0        -235.98       -235.98  
2020-05-21    -1840.98        1595.68         -245.3        -245.3  
2020-06-22     -231.24              0        -231.24       -231.24  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-231.24
The current status of the model is: Waiting to enter since 2020-06-22 00:00:00 

Processing portfolio for model: SMA_004_SlowMA_20_FastMA_05
BOUGHT QTY: 1 on 2019-01-18 00:00:00 at the price of 1747.02
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-03-26 00:00:00 at the price of 1761.2
SOLD QTY: -1 on 2019-05-07 00:00:00 at the price of 1781.45
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-27 00:00:00 at the price of 1969.56
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-03 00:00:00 at the price of 1865.39
SOLD QTY: -1 on 2020-01-22 00:00:00 at the price of 2004.33
BOUGHT QTY: 1 on 2020-02-18 00:00:00 at the price of 1972.25
SOLD QTY: -1 on 2020-02-26 00:00:00 at the price of 1731.22
BOUGHT QTY: 1 on 2020-04-09 00:00:00 at the price of 1424.76
SOLD QTY: -1 on 2020-04-28 00:00:00 at the price of 1434.2
BOUGHT QTY: 1 on 2020-04-29 00:00:00 at the price of 1487.83
SOLD QTY: -1 on 2020-05-08 00:00:00 at the price of 1416.69
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-17 00:00:00 at the price of 1677.92
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-18            1          1    1747.02                0         0   
2019-03-01           -1          0          0           1708.2    -38.82   
2019-03-26            1          1     1761.2                0         0   
2019-05-07           -1          0          0          1781.45     20.25   
2019-06-11            1          1     1799.5                0         0   
2019-08-05           -1          0          0          1819.98     20.48   
2019-08-14            1          1    1908.56                0         0   
2019-09-27           -1          0          0          1969.56        61   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-03            1          1    1865.39                0         0   
2020-01-22           -1          0          0          2004.33    138.94   
2020-02-18            1          1    1972.25                0         0   
2020-02-26           -1          0          0          1731.22   -241.03   
2020-04-09            1          1    1424.76                0         0   
2020-04-28           -1          0          0           1434.2      9.44   
2020-04-29            1          1    1487.83                0         0   
2020-05-08           -1          0          0          1416.69    -71.14   
2020-05-19            1          1    1556.29                0         0   
2020-06-17           -1          0          0          1677.92    121.63   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-18    -1747.02        1760.26          13.24         13.24  
2019-03-01      -38.82              0         -38.82        -38.82  
2019-03-26    -1800.02        1768.87         -31.15        -31.15  
2019-05-07      -18.57              0         -18.57        -18.57  
2019-06-11    -1818.07        1803.63         -14.44        -14.44  
2019-08-05        1.91              0           1.91          1.91  
2019-08-14    -1906.65        1891.19         -15.46        -15.46  
2019-09-27       62.91              0          62.91         62.91  
2019-10-17    -1970.09        2028.53          58.44         58.44  
2019-11-08      -29.09              0         -29.09        -29.09  
2019-12-03    -1894.48        1879.98          -14.5         -14.5  
2020-01-22      109.85              0         109.85        109.85  
2020-02-18     -1862.4        1976.28         113.88        113.88  
2020-02-26     -131.18              0        -131.18       -131.18  
2020-04-09    -1555.94        1420.64         -135.3        -135.3  
2020-04-28     -121.74              0        -121.74       -121.74  
2020-04-29    -1609.57        1520.53         -89.04        -89.04  
2020-05-08     -192.88              0        -192.88       -192.88  
2020-05-19    -1749.17        1547.56        -201.61       -201.61  
2020-06-17      -71.25              0         -71.25        -71.25  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-71.25
The current status of the model is: Waiting to enter since 2020-06-17 00:00:00 

Processing portfolio for model: SMA_005_SlowMA_20_FastMA_10
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-03-27 00:00:00 at the price of 1768.98
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-07-22 00:00:00 at the price of 1883.65
BOUGHT QTY: 1 on 2019-07-23 00:00:00 at the price of 1898.63
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-02 00:00:00 at the price of 1969.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-05 00:00:00 at the price of 1929.0
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-19 00:00:00 at the price of 1982.76
SOLD QTY: -1 on 2020-02-28 00:00:00 at the price of 1643.64
BOUGHT QTY: 1 on 2020-04-08 00:00:00 at the price of 1382.65
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-22 00:00:00 at the price of 1609.74
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-04           -1          0          0          1723.66    -19.52   
2019-03-27            1          1    1768.98                0         0   
2019-05-09           -1          0          0          1729.43    -39.55   
2019-06-14            1          1     1808.2                0         0   
2019-07-22           -1          0          0          1883.65     75.45   
2019-07-23            1          1    1898.63                0         0   
2019-08-08           -1          0          0             1900      1.37   
2019-08-20            1          1    1942.51                0         0   
2019-10-02           -1          0          0             1969     26.49   
2019-10-18            1          1    2030.86                0         0   
2019-11-11           -1          0          0             1869   -161.86   
2019-12-05            1          1       1929                0         0   
2020-01-23           -1          0          0          1986.24     57.24   
2020-02-19            1          1    1982.76                0         0   
2020-02-28           -1          0          0          1643.64   -339.12   
2020-04-08            1          1    1382.65                0         0   
2020-05-15           -1          0          0          1377.01     -5.64   
2020-05-19            1          1    1556.29                0         0   
2020-06-22           -1          0          0          1609.74     53.45   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-04      -19.52              0         -19.52        -19.52  
2019-03-27     -1788.5        1752.11         -36.39        -36.39  
2019-05-09      -59.07              0         -59.07        -59.07  
2019-06-14    -1867.27         1775.5         -91.77        -91.77  
2019-07-22       16.38              0          16.38         16.38  
2019-07-23    -1882.25        1900.25             18            18  
2019-08-08       17.75              0          17.75         17.75  
2019-08-20    -1924.76         1934.4           9.64          9.64  
2019-10-02       44.24              0          44.24         44.24  
2019-10-18    -1986.62        2013.53          26.91         26.91  
2019-11-11     -117.62              0        -117.62       -117.62  
2019-12-05    -2046.62        1904.22         -142.4        -142.4  
2020-01-23      -60.38              0         -60.38        -60.38  
2020-02-19    -2043.14        1968.49         -74.65        -74.65  
2020-02-28      -399.5              0         -399.5        -399.5  
2020-04-08    -1782.15        1372.06        -410.09       -410.09  
2020-05-15     -405.14              0        -405.14       -405.14  
2020-05-19    -1961.43        1547.56        -413.87       -413.87  
2020-06-22     -351.69              0        -351.69       -351.69  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-351.69
The current status of the model is: Waiting to enter since 2020-06-22 00:00:00 

Processing portfolio for model: SMA_006_SlowMA_20_FastMA_15
BOUGHT QTY: 1 on 2019-01-17 00:00:00 at the price of 1681.73
SOLD QTY: -1 on 2019-01-25 00:00:00 at the price of 1811.99
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-03-28 00:00:00 at the price of 1759.99
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-06-18 00:00:00 at the price of 1808.38
SOLD QTY: -1 on 2019-07-29 00:00:00 at the price of 1958.78
BOUGHT QTY: 1 on 2019-08-01 00:00:00 at the price of 1885.47
SOLD QTY: -1 on 2019-08-15 00:00:00 at the price of 1900.03
BOUGHT QTY: 1 on 2019-08-26 00:00:00 at the price of 1918.24
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-22 00:00:00 at the price of 2029.04
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-06 00:00:00 at the price of 1923.27
SOLD QTY: -1 on 2020-01-24 00:00:00 at the price of 1998.0
BOUGHT QTY: 1 on 2020-02-24 00:00:00 at the price of 1830.93
SOLD QTY: -1 on 2020-03-02 00:00:00 at the price of 1709.75
BOUGHT QTY: 1 on 2020-04-13 00:00:00 at the price of 1413.19
SOLD QTY: -1 on 2020-05-07 00:00:00 at the price of 1392.26
BOUGHT QTY: 1 on 2020-05-13 00:00:00 at the price of 1379.34
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-17            1          1    1681.73                0         0   
2019-01-25           -1          0          0          1811.99    130.26   
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-03-28            1          1    1759.99                0         0   
2019-05-10           -1          0          0             1825     65.01   
2019-06-18            1          1    1808.38                0         0   
2019-07-29           -1          0          0          1958.78     150.4   
2019-08-01            1          1    1885.47                0         0   
2019-08-15           -1          0          0          1900.03     14.56   
2019-08-26            1          1    1918.24                0         0   
2019-10-04           -1          0          0          1970.64      52.4   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-06            1          1    1923.27                0         0   
2020-01-24           -1          0          0             1998     74.73   
2020-02-24            1          1    1830.93                0         0   
2020-03-02           -1          0          0          1709.75   -121.18   
2020-04-13            1          1    1413.19                0         0   
2020-05-07           -1          0          0          1392.26    -20.93   
2020-05-13            1          1    1379.34                0         0   
2020-06-26           -1          0          0           1597.3    217.96   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-17    -1681.73        1724.51          42.78         42.78  
2019-01-25      130.26              0         130.26        130.26  
2019-01-28    -1657.36         1813.6         156.24        156.24  
2019-03-05       57.64              0          57.64         57.64  
2019-03-28    -1702.35        1728.89          26.54         26.54  
2019-05-10      122.65              0         122.65        122.65  
2019-06-18    -1685.73        1808.99         123.26        123.26  
2019-07-29      273.05              0         273.05        273.05  
2019-08-01    -1612.42        1879.86         267.44        267.44  
2019-08-15      287.61              0         287.61        287.61  
2019-08-26    -1630.63        1916.81         286.18        286.18  
2019-10-04      340.01              0         340.01        340.01  
2019-10-22    -1689.03        2023.05         334.02        334.02  
2019-11-11      179.97              0         179.97        179.97  
2019-12-06     -1743.3        1930.27         186.97        186.97  
2020-01-24       254.7              0          254.7         254.7  
2020-02-24    -1576.23        1792.54         216.31        216.31  
2020-03-02      133.52              0         133.52        133.52  
2020-04-13    -1279.67        1421.01         141.34        141.34  
2020-05-07      112.59              0         112.59        112.59  
2020-05-13    -1266.75        1366.07          99.32         99.32  
2020-06-26      330.55              0         330.55        330.55  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $330.55
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_007_SlowMA_25_FastMA_05
BOUGHT QTY: 1 on 2019-01-22 00:00:00 at the price of 1743.18
SOLD QTY: -1 on 2019-03-01 00:00:00 at the price of 1708.2
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-07 00:00:00 at the price of 1781.45
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-09 00:00:00 at the price of 1928.08
SOLD QTY: -1 on 2020-01-23 00:00:00 at the price of 1986.24
BOUGHT QTY: 1 on 2020-02-19 00:00:00 at the price of 1982.76
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-04-13 00:00:00 at the price of 1413.19
SOLD QTY: -1 on 2020-05-12 00:00:00 at the price of 1401.09
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-18 00:00:00 at the price of 1622.4
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-22            1          1    1743.18                0         0   
2019-03-01           -1          0          0           1708.2    -34.98   
2019-04-03            1          1    1778.47                0         0   
2019-05-07           -1          0          0          1781.45      2.98   
2019-06-11            1          1     1799.5                0         0   
2019-08-05           -1          0          0          1819.98     20.48   
2019-08-14            1          1    1908.56                0         0   
2019-09-30           -1          0          0             1953     44.44   
2019-10-18            1          1    2030.86                0         0   
2019-11-08           -1          0          0             1941    -89.86   
2019-12-09            1          1    1928.08                0         0   
2020-01-23           -1          0          0          1986.24     58.16   
2020-02-19            1          1    1982.76                0         0   
2020-02-25           -1          0          0             1803   -179.76   
2020-04-13            1          1    1413.19                0         0   
2020-05-12           -1          0          0          1401.09     -12.1   
2020-05-20            1          1    1578.52                0         0   
2020-06-18           -1          0          0           1622.4     43.88   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-22    -1743.18        1708.98          -34.2         -34.2  
2019-03-01      -34.98              0         -34.98        -34.98  
2019-04-03    -1813.45        1774.93         -38.52        -38.52  
2019-05-07         -32              0            -32           -32  
2019-06-11     -1831.5        1803.63         -27.87        -27.87  
2019-08-05      -11.52              0         -11.52        -11.52  
2019-08-14    -1920.08        1891.19         -28.89        -28.89  
2019-09-30       32.92              0          32.92         32.92  
2019-10-18    -1997.94        2013.53          15.59         15.59  
2019-11-08      -56.94              0         -56.94        -56.94  
2019-12-09    -1985.02        1905.79         -79.23        -79.23  
2020-01-23        1.22              0           1.22          1.22  
2020-02-19    -1981.54        1968.49         -13.05        -13.05  
2020-02-25     -178.54              0        -178.54       -178.54  
2020-04-13    -1591.73        1421.01        -170.72       -170.72  
2020-05-12     -190.64              0        -190.64       -190.64  
2020-05-20    -1769.16        1599.15        -170.01       -170.01  
2020-06-18     -146.76              0        -146.76       -146.76  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-146.76
The current status of the model is: Waiting to enter since 2020-06-18 00:00:00 

Processing portfolio for model: SMA_008_SlowMA_25_FastMA_10
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-03 00:00:00 at the price of 1936.55
BOUGHT QTY: 1 on 2019-10-23 00:00:00 at the price of 2019.66
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-10 00:00:00 at the price of 1902.4
SOLD QTY: -1 on 2020-01-27 00:00:00 at the price of 1906.41
BOUGHT QTY: 1 on 2020-02-21 00:00:00 at the price of 1965.0
SOLD QTY: -1 on 2020-02-27 00:00:00 at the price of 1612.98
BOUGHT QTY: 1 on 2020-04-14 00:00:00 at the price of 1460.09
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-23 00:00:00 at the price of 1652.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-05           -1          0          0             1715    -96.99   
2019-04-03            1          1    1778.47                0         0   
2019-05-10           -1          0          0             1825     46.53   
2019-06-14            1          1     1808.2                0         0   
2019-08-07           -1          0          0           1758.4     -49.8   
2019-08-20            1          1    1942.51                0         0   
2019-10-03           -1          0          0          1936.55     -5.96   
2019-10-23            1          1    2019.66                0         0   
2019-11-11           -1          0          0             1869   -150.66   
2019-12-10            1          1     1902.4                0         0   
2020-01-27           -1          0          0          1906.41      4.01   
2020-02-21            1          1       1965                0         0   
2020-02-27           -1          0          0          1612.98   -352.02   
2020-04-14            1          1    1460.09                0         0   
2020-05-15           -1          0          0          1377.01    -83.08   
2020-05-20            1          1    1578.52                0         0   
2020-06-23           -1          0          0           1652.3     73.78   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-05      -96.99              0         -96.99        -96.99  
2019-04-03    -1875.46        1774.93        -100.53       -100.53  
2019-05-10      -50.46              0         -50.46        -50.46  
2019-06-14    -1858.66         1775.5         -83.16        -83.16  
2019-08-07     -100.26              0        -100.26       -100.26  
2019-08-20    -2042.77         1934.4        -108.37       -108.37  
2019-10-03     -106.22              0        -106.22       -106.22  
2019-10-23    -2125.88        2032.23         -93.65        -93.65  
2019-11-11     -256.88              0        -256.88       -256.88  
2019-12-10    -2159.28        1904.63        -254.65       -254.65  
2020-01-27     -252.87              0        -252.87       -252.87  
2020-02-21    -2217.87        1928.72        -289.15       -289.15  
2020-02-27     -604.89              0        -604.89       -604.89  
2020-04-14    -2064.98        1449.42        -615.56       -615.56  
2020-05-15     -687.97              0        -687.97       -687.97  
2020-05-20    -2266.49        1599.15        -667.34       -667.34  
2020-06-23     -614.19              0        -614.19       -614.19  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-614.19
The current status of the model is: Waiting to enter since 2020-06-23 00:00:00 

Processing portfolio for model: SMA_009_SlowMA_25_FastMA_15
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-07 00:00:00 at the price of 1746.5
BOUGHT QTY: 1 on 2019-04-03 00:00:00 at the price of 1778.47
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-09 00:00:00 at the price of 1926.54
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-27 00:00:00 at the price of 1921.74
SOLD QTY: -1 on 2019-10-08 00:00:00 at the price of 1937.05
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-12 00:00:00 at the price of 1930.85
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-15 00:00:00 at the price of 1407.84
SOLD QTY: -1 on 2020-06-26 00:00:00 at the price of 1597.3
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-07           -1          0          0           1746.5    -65.49   
2019-04-03            1          1    1778.47                0         0   
2019-05-14           -1          0          0          1787.12      8.65   
2019-06-20            1          1    1862.07                0         0   
2019-08-06           -1          0          0           1799.2    -62.87   
2019-08-09            1          1    1926.54                0         0   
2019-08-16           -1          0          0             1929      2.46   
2019-08-27            1          1    1921.74                0         0   
2019-10-08           -1          0          0          1937.05     15.31   
2019-10-24            1          1       2035                0         0   
2019-11-13           -1          0          0          1855.59   -179.41   
2019-12-12            1          1    1930.85                0         0   
2020-01-28           -1          0          0          1914.67    -16.18   
2020-04-15            1          1    1407.84                0         0   
2020-06-26           -1          0          0           1597.3    189.46   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-07      -65.49              0         -65.49        -65.49  
2019-04-03    -1843.96        1774.93         -69.03        -69.03  
2019-05-14      -56.84              0         -56.84        -56.84  
2019-06-20    -1918.91        1861.31          -57.6         -57.6  
2019-08-06     -119.71              0        -119.71       -119.71  
2019-08-09    -2046.25        1917.69        -128.56       -128.56  
2019-08-16     -117.25              0        -117.25       -117.25  
2019-08-27    -2038.99        1919.99           -119          -119  
2019-10-08     -101.94              0        -101.94       -101.94  
2019-10-24    -2136.94        2043.75         -93.19        -93.19  
2019-11-13     -281.35              0        -281.35       -281.35  
2019-12-12     -2212.2        1948.48        -263.72       -263.72  
2020-01-28     -297.53              0        -297.53       -297.53  
2020-04-15    -1705.37        1424.61        -280.76       -280.76  
2020-06-26     -108.07              0        -108.07       -108.07  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-108.07
The current status of the model is: Waiting to enter since 2020-06-26 00:00:00 

Processing portfolio for model: SMA_010_SlowMA_25_FastMA_20
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-04 00:00:00 at the price of 1775.31
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-08-05 00:00:00 at the price of 1819.98
BOUGHT QTY: 1 on 2019-08-12 00:00:00 at the price of 1900.44
SOLD QTY: -1 on 2019-08-23 00:00:00 at the price of 1942.98
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-10-10 00:00:00 at the price of 1942.69
BOUGHT QTY: 1 on 2019-10-28 00:00:00 at the price of 2053.02
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-13 00:00:00 at the price of 1960.87
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-17 00:00:00 at the price of 1469.0
SOLD QTY: -1 on 2020-05-14 00:00:00 at the price of 1348.74
BOUGHT QTY: 1 on 2020-05-20 00:00:00 at the price of 1578.52
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
BOUGHT QTY: 1 on 2020-07-01 00:00:00 at the price of 1606.05
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-08           -1          0          0          1708.04   -103.95   
2019-04-04            1          1    1775.31                0         0   
2019-05-16           -1          0          0             1790     14.69   
2019-06-24            1          1    1880.97                0         0   
2019-08-05           -1          0          0          1819.98    -60.99   
2019-08-12            1          1    1900.44                0         0   
2019-08-23           -1          0          0          1942.98     42.54   
2019-09-03            1          1    1956.56                0         0   
2019-10-10           -1          0          0          1942.69    -13.87   
2019-10-28            1          1    2053.02                0         0   
2019-11-14           -1          0          0          1855.39   -197.63   
2019-12-13            1          1    1960.87                0         0   
2020-01-29           -1          0          0          1924.04    -36.83   
2020-04-17            1          1       1469                0         0   
2020-05-14           -1          0          0          1348.74   -120.26   
2020-05-20            1          1    1578.52                0         0   
2020-06-30           -1          0          0           1583.9      5.38   
2020-07-01            1          1    1606.05                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-08     -103.95              0        -103.95       -103.95  
2019-04-04    -1879.26         1780.6         -98.66        -98.66  
2019-05-16      -89.26              0         -89.26        -89.26  
2019-06-24    -1970.23        1870.81         -99.42        -99.42  
2019-08-05     -150.25              0        -150.25       -150.25  
2019-08-12    -2050.69        1916.89         -133.8        -133.8  
2019-08-23     -107.71              0        -107.71       -107.71  
2019-09-03    -2064.27        1941.78        -122.49       -122.49  
2019-10-10     -121.58              0        -121.58       -121.58  
2019-10-28     -2174.6        2057.05        -117.55       -117.55  
2019-11-14     -319.21              0        -319.21       -319.21  
2019-12-13    -2280.08         1973.6        -306.48       -306.48  
2020-01-29     -356.04              0        -356.04       -356.04  
2020-04-17    -1825.04        1470.87        -354.17       -354.17  
2020-05-14      -476.3              0         -476.3        -476.3  
2020-05-20    -2054.82        1599.15        -455.67       -455.67  
2020-06-30     -470.92              0        -470.92       -470.92  
2020-07-01    -2076.97        1658.79        -418.18       -418.18  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-418.18
The current status of the model is: Holding a position since 2020-07-01 00:00:00 

Processing portfolio for model: SMA_011_SlowMA_30_FastMA_05
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-04 00:00:00 at the price of 1723.66
BOUGHT QTY: 1 on 2019-04-08 00:00:00 at the price of 1767.92
SOLD QTY: -1 on 2019-05-08 00:00:00 at the price of 1765.01
BOUGHT QTY: 1 on 2019-06-11 00:00:00 at the price of 1799.5
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-09-30 00:00:00 at the price of 1953.0
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-12 00:00:00 at the price of 1930.85
SOLD QTY: -1 on 2020-01-24 00:00:00 at the price of 1998.0
BOUGHT QTY: 1 on 2020-02-21 00:00:00 at the price of 1965.0
SOLD QTY: -1 on 2020-02-25 00:00:00 at the price of 1803.0
BOUGHT QTY: 1 on 2020-04-15 00:00:00 at the price of 1407.84
SOLD QTY: -1 on 2020-05-15 00:00:00 at the price of 1377.01
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-25 00:00:00 at the price of 1585.81
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-04           -1          0          0          1723.66    -88.33   
2019-04-08            1          1    1767.92                0         0   
2019-05-08           -1          0          0          1765.01     -2.91   
2019-06-11            1          1     1799.5                0         0   
2019-08-06           -1          0          0           1799.2      -0.3   
2019-08-14            1          1    1908.56                0         0   
2019-09-30           -1          0          0             1953     44.44   
2019-10-18            1          1    2030.86                0         0   
2019-11-08           -1          0          0             1941    -89.86   
2019-12-12            1          1    1930.85                0         0   
2020-01-24           -1          0          0             1998     67.15   
2020-02-21            1          1       1965                0         0   
2020-02-25           -1          0          0             1803      -162   
2020-04-15            1          1    1407.84                0         0   
2020-05-15           -1          0          0          1377.01    -30.83   
2020-05-19            1          1    1556.29                0         0   
2020-06-25           -1          0          0          1585.81     29.52   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-04      -88.33              0         -88.33        -88.33  
2019-04-08    -1856.25        1788.72         -67.53        -67.53  
2019-05-08      -91.24              0         -91.24        -91.24  
2019-06-11    -1890.74        1803.63         -87.11        -87.11  
2019-08-06      -91.54              0         -91.54        -91.54  
2019-08-14     -2000.1        1891.19        -108.91       -108.91  
2019-09-30       -47.1              0          -47.1         -47.1  
2019-10-18    -2077.96        2013.53         -64.43        -64.43  
2019-11-08     -136.96              0        -136.96       -136.96  
2019-12-12    -2067.81        1948.48        -119.33       -119.33  
2020-01-24      -69.81              0         -69.81        -69.81  
2020-02-21    -2034.81        1928.72        -106.09       -106.09  
2020-02-25     -231.81              0        -231.81       -231.81  
2020-04-15    -1639.65        1424.61        -215.04       -215.04  
2020-05-15     -262.64              0        -262.64       -262.64  
2020-05-19    -1818.93        1547.56        -271.37       -271.37  
2020-06-25     -233.12              0        -233.12       -233.12  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-233.12
The current status of the model is: Waiting to enter since 2020-06-25 00:00:00 

Processing portfolio for model: SMA_012_SlowMA_30_FastMA_10
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-06 00:00:00 at the price of 1748.37
BOUGHT QTY: 1 on 2019-04-09 00:00:00 at the price of 1776.75
SOLD QTY: -1 on 2019-05-13 00:00:00 at the price of 1800.0
BOUGHT QTY: 1 on 2019-06-17 00:00:00 at the price of 1776.0
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-12 00:00:00 at the price of 1901.35
BOUGHT QTY: 1 on 2019-12-13 00:00:00 at the price of 1960.87
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-17 00:00:00 at the price of 1469.0
SOLD QTY: -1 on 2020-05-18 00:00:00 at the price of 1430.0
BOUGHT QTY: 1 on 2020-05-19 00:00:00 at the price of 1556.29
SOLD QTY: -1 on 2020-06-25 00:00:00 at the price of 1585.81
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-06           -1          0          0          1748.37    -39.25   
2019-04-09            1          1    1776.75                0         0   
2019-05-13           -1          0          0             1800     23.25   
2019-06-17            1          1       1776                0         0   
2019-08-08           -1          0          0             1900       124   
2019-08-20            1          1    1942.51                0         0   
2019-10-04           -1          0          0          1970.64     28.13   
2019-10-24            1          1       2035                0         0   
2019-11-12           -1          0          0          1901.35   -133.65   
2019-12-13            1          1    1960.87                0         0   
2020-01-28           -1          0          0          1914.67     -46.2   
2020-04-17            1          1       1469                0         0   
2020-05-18           -1          0          0             1430       -39   
2020-05-19            1          1    1556.29                0         0   
2020-06-25           -1          0          0          1585.81     29.52   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-06      -39.25              0         -39.25        -39.25  
2019-04-09       -1816        1794.47         -21.53        -21.53  
2019-05-13         -16              0            -16           -16  
2019-06-17       -1792        1781.41         -10.59        -10.59  
2019-08-08         108              0            108           108  
2019-08-20    -1834.51         1934.4          99.89         99.89  
2019-10-04      136.13              0         136.13        136.13  
2019-10-24    -1898.87        2043.75         144.88        144.88  
2019-11-12        2.48              0           2.48          2.48  
2019-12-13    -1958.39         1973.6          15.21         15.21  
2020-01-28      -43.72              0         -43.72        -43.72  
2020-04-17    -1512.72        1470.87         -41.85        -41.85  
2020-05-18      -82.72              0         -82.72        -82.72  
2020-05-19    -1639.01        1547.56         -91.45        -91.45  
2020-06-25       -53.2              0          -53.2         -53.2  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-53.20
The current status of the model is: Waiting to enter since 2020-06-25 00:00:00 

Processing portfolio for model: SMA_013_SlowMA_30_FastMA_15
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-09 00:00:00 at the price of 1776.75
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-09 00:00:00 at the price of 1926.54
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-26 00:00:00 at the price of 1918.24
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-16 00:00:00 at the price of 1983.47
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-20 00:00:00 at the price of 1462.05
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-08           -1          0          0          1708.04   -108.58   
2019-04-09            1          1    1776.75                0         0   
2019-05-16           -1          0          0             1790     13.25   
2019-06-20            1          1    1862.07                0         0   
2019-08-09           -1          0          0          1926.54     64.47   
2019-08-13            1          1    1907.67                0         0   
2019-08-16           -1          0          0             1929     21.33   
2019-08-26            1          1    1918.24                0         0   
2019-10-09           -1          0          0          1953.72     35.48   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-16            1          1    1983.47                0         0   
2020-01-29           -1          0          0          1924.04    -59.43   
2020-04-20            1          1    1462.05                0         0   
2020-06-30           -1          0          0           1583.9    121.85   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-08     -108.58              0        -108.58       -108.58  
2019-04-09    -1885.33        1794.47         -90.86        -90.86  
2019-05-16      -95.33              0         -95.33        -95.33  
2019-06-20     -1957.4        1861.31         -96.09        -96.09  
2019-08-09      -30.86              0         -30.86        -30.86  
2019-08-13    -1938.53        1943.19           4.66          4.66  
2019-08-16       -9.53              0          -9.53         -9.53  
2019-08-26    -1927.77        1916.81         -10.96        -10.96  
2019-10-09       25.95              0          25.95         25.95  
2019-10-29    -2028.19         2042.8          14.61         14.61  
2019-11-14      -172.8              0         -172.8        -172.8  
2019-12-16    -2156.27        1995.02        -161.25       -161.25  
2020-01-29     -232.23              0        -232.23       -232.23  
2020-04-20    -1694.28        1411.63        -282.65       -282.65  
2020-06-30     -110.38              0        -110.38       -110.38  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-110.38
The current status of the model is: Waiting to enter since 2020-06-30 00:00:00 

Processing portfolio for model: SMA_014_SlowMA_30_FastMA_20
BOUGHT QTY: 1 on 2019-01-30 00:00:00 at the price of 1825.33
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-10 00:00:00 at the price of 1793.85
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-08-26 00:00:00 at the price of 1918.24
BOUGHT QTY: 1 on 2019-09-03 00:00:00 at the price of 1956.56
SOLD QTY: -1 on 2019-10-14 00:00:00 at the price of 1964.52
BOUGHT QTY: 1 on 2019-10-30 00:00:00 at the price of 2035.53
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-04-22 00:00:00 at the price of 1365.01
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-30            1          1    1825.33                0         0   
2019-03-11           -1          0          0          1721.69   -103.64   
2019-04-10            1          1    1793.85                0         0   
2019-05-21           -1          0          0          1762.34    -31.51   
2019-06-25            1          1    1880.83                0         0   
2019-08-08           -1          0          0             1900     19.17   
2019-08-14            1          1    1908.56                0         0   
2019-08-26           -1          0          0          1918.24      9.68   
2019-09-03            1          1    1956.56                0         0   
2019-10-14           -1          0          0          1964.52      7.96   
2019-10-30            1          1    2035.53                0         0   
2019-11-18           -1          0          0          1847.04   -188.49   
2019-12-18            1          1    2008.67                0         0   
2020-01-30           -1          0          0          1871.42   -137.25   
2020-04-22            1          1    1365.01                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-30    -1825.33         1818.7          -6.63         -6.63  
2019-03-11     -103.64              0        -103.64       -103.64  
2019-04-10    -1897.49           1806         -91.49        -91.49  
2019-05-21     -135.15              0        -135.15       -135.15  
2019-06-25    -2015.98        1845.47        -170.51       -170.51  
2019-08-08     -115.98              0        -115.98       -115.98  
2019-08-14    -2024.54        1891.19        -133.35       -133.35  
2019-08-26      -106.3              0         -106.3        -106.3  
2019-09-03    -2062.86        1941.78        -121.08       -121.08  
2019-10-14      -98.34              0         -98.34        -98.34  
2019-10-30    -2133.87        2049.55         -84.32        -84.32  
2019-11-18     -286.83              0        -286.83       -286.83  
2019-12-18     -2295.5        1991.51        -303.99       -303.99  
2020-01-30     -424.08              0        -424.08       -424.08  
2020-04-22    -1789.09           1355        -434.09       -434.09  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-130.30
The current status of the model is: Holding a position since 2020-04-22 00:00:00 

Processing portfolio for model: SMA_015_SlowMA_35_FastMA_05
BOUGHT QTY: 1 on 2019-01-25 00:00:00 at the price of 1811.99
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-10 00:00:00 at the price of 1793.85
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-13 00:00:00 at the price of 1802.05
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-10-01 00:00:00 at the price of 1977.0
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-16 00:00:00 at the price of 1983.47
SOLD QTY: -1 on 2020-01-27 00:00:00 at the price of 1906.41
BOUGHT QTY: 1 on 2020-04-16 00:00:00 at the price of 1432.35
SOLD QTY: -1 on 2020-06-30 00:00:00 at the price of 1583.9
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-25            1          1    1811.99                0         0   
2019-03-05           -1          0          0             1715    -96.99   
2019-04-10            1          1    1793.85                0         0   
2019-05-09           -1          0          0          1729.43    -64.42   
2019-06-13            1          1    1802.05                0         0   
2019-08-06           -1          0          0           1799.2     -2.85   
2019-08-14            1          1    1908.56                0         0   
2019-10-01           -1          0          0             1977     68.44   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-16            1          1    1983.47                0         0   
2020-01-27           -1          0          0          1906.41    -77.06   
2020-04-16            1          1    1432.35                0         0   
2020-06-30           -1          0          0           1583.9    151.55   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-25    -1811.99         1802.2          -9.79         -9.79  
2019-03-05      -96.99              0         -96.99        -96.99  
2019-04-10    -1890.84           1806         -84.84        -84.84  
2019-05-09     -161.41              0        -161.41       -161.41  
2019-06-13    -1963.46        1809.52        -153.94       -153.94  
2019-08-06     -164.26              0        -164.26       -164.26  
2019-08-14    -2072.82        1891.19        -181.63       -181.63  
2019-10-01      -95.82              0         -95.82        -95.82  
2019-10-17    -2128.82        2028.53        -100.29       -100.29  
2019-11-08     -187.82              0        -187.82       -187.82  
2019-12-16    -2171.29        1995.02        -176.27       -176.27  
2020-01-27     -264.88              0        -264.88       -264.88  
2020-04-16    -1697.23         1407.4        -289.83       -289.83  
2020-06-30     -113.33              0        -113.33       -113.33  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-113.33
The current status of the model is: Waiting to enter since 2020-06-30 00:00:00 

Processing portfolio for model: SMA_016_SlowMA_35_FastMA_10
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-07 00:00:00 at the price of 1746.5
BOUGHT QTY: 1 on 2019-04-12 00:00:00 at the price of 1827.87
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-18 00:00:00 at the price of 1808.38
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-04 00:00:00 at the price of 1970.64
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-12 00:00:00 at the price of 1901.35
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-29 00:00:00 at the price of 1924.04
BOUGHT QTY: 1 on 2020-04-21 00:00:00 at the price of 1382.81
SOLD QTY: -1 on 2020-07-01 00:00:00 at the price of 1606.05
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-07           -1          0          0           1746.5    -70.12   
2019-04-12            1          1    1827.87                0         0   
2019-05-14           -1          0          0          1787.12    -40.75   
2019-06-18            1          1    1808.38                0         0   
2019-08-08           -1          0          0             1900     91.62   
2019-08-20            1          1    1942.51                0         0   
2019-10-04           -1          0          0          1970.64     28.13   
2019-10-24            1          1       2035                0         0   
2019-11-12           -1          0          0          1901.35   -133.65   
2019-12-17            1          1       2000                0         0   
2020-01-29           -1          0          0          1924.04    -75.96   
2020-04-21            1          1    1382.81                0         0   
2020-07-01           -1          0          0          1606.05    223.24   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-07      -70.12              0         -70.12        -70.12  
2019-04-12    -1897.99        1833.07         -64.92        -64.92  
2019-05-14     -110.87              0        -110.87       -110.87  
2019-06-18    -1919.25        1808.99        -110.26       -110.26  
2019-08-08      -19.25              0         -19.25        -19.25  
2019-08-20    -1961.76         1934.4         -27.36        -27.36  
2019-10-04        8.88              0           8.88          8.88  
2019-10-24    -2026.12        2043.75          17.63         17.63  
2019-11-12     -124.77              0        -124.77       -124.77  
2019-12-17    -2124.77        2001.87         -122.9        -122.9  
2020-01-29     -200.73              0        -200.73       -200.73  
2020-04-21    -1583.54        1342.22        -241.32       -241.32  
2020-07-01       22.51              0          22.51         22.51  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $22.51
The current status of the model is: Waiting to enter since 2020-07-01 00:00:00 

Processing portfolio for model: SMA_017_SlowMA_35_FastMA_15
BOUGHT QTY: 1 on 2019-02-01 00:00:00 at the price of 1824.05
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-17 00:00:00 at the price of 1786.37
BOUGHT QTY: 1 on 2019-06-21 00:00:00 at the price of 1859.36
SOLD QTY: -1 on 2019-08-16 00:00:00 at the price of 1929.0
BOUGHT QTY: 1 on 2019-08-23 00:00:00 at the price of 1942.98
SOLD QTY: -1 on 2019-10-10 00:00:00 at the price of 1942.69
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-31 00:00:00 at the price of 1865.93
BOUGHT QTY: 1 on 2020-04-24 00:00:00 at the price of 1372.39
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-01            1          1    1824.05                0         0   
2019-03-11           -1          0          0          1721.69   -102.36   
2019-04-15            1          1       1834                0         0   
2019-05-17           -1          0          0          1786.37    -47.63   
2019-06-21            1          1    1859.36                0         0   
2019-08-16           -1          0          0             1929     69.64   
2019-08-23            1          1    1942.98                0         0   
2019-10-10           -1          0          0          1942.69     -0.29   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-18            1          1    2008.67                0         0   
2020-01-31           -1          0          0          1865.93   -142.74   
2020-04-24            1          1    1372.39                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-01    -1824.05        1836.96          12.91         12.91  
2019-03-11     -102.36              0        -102.36       -102.36  
2019-04-15    -1936.36        1846.23         -90.13        -90.13  
2019-05-17     -149.99              0        -149.99       -149.99  
2019-06-21    -2009.35           1880        -129.35       -129.35  
2019-08-16      -80.35              0         -80.35        -80.35  
2019-08-23    -2023.33        1898.67        -124.66       -124.66  
2019-10-10      -80.64              0         -80.64        -80.64  
2019-10-29    -2134.78         2042.8         -91.98        -91.98  
2019-11-14     -279.39              0        -279.39       -279.39  
2019-12-18    -2288.06        1991.51        -296.55       -296.55  
2020-01-31     -422.13              0        -422.13       -422.13  
2020-04-24    -1794.52        1362.77        -431.75       -431.75  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-135.73
The current status of the model is: Holding a position since 2020-04-24 00:00:00 

Processing portfolio for model: SMA_018_SlowMA_35_FastMA_20
BOUGHT QTY: 1 on 2019-02-04 00:00:00 at the price of 1840.39
SOLD QTY: -1 on 2019-03-13 00:00:00 at the price of 1740.44
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-22 00:00:00 at the price of 1757.35
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-10-15 00:00:00 at the price of 1992.21
BOUGHT QTY: 1 on 2019-11-01 00:00:00 at the price of 2023.62
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-04-27 00:00:00 at the price of 1374.93
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-04            1          1    1840.39                0         0   
2019-03-13           -1          0          0          1740.44    -99.95   
2019-04-15            1          1       1834                0         0   
2019-05-22           -1          0          0          1757.35    -76.65   
2019-06-25            1          1    1880.83                0         0   
2019-10-15           -1          0          0          1992.21    111.38   
2019-11-01            1          1    2023.62                0         0   
2019-11-18           -1          0          0          1847.04   -176.58   
2019-12-20            1          1       2017                0         0   
2020-02-03           -1          0          0          1847.15   -169.85   
2020-04-27            1          1    1374.93                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-04    -1840.39        1860.99           20.6          20.6  
2019-03-13      -99.95              0         -99.95        -99.95  
2019-04-15    -1933.95        1846.23         -87.72        -87.72  
2019-05-22      -176.6              0         -176.6        -176.6  
2019-06-25    -2057.43        1845.47        -211.96       -211.96  
2019-10-15      -65.22              0         -65.22        -65.22  
2019-11-01    -2088.84        2032.02         -56.82        -56.82  
2019-11-18      -241.8              0         -241.8        -241.8  
2019-12-20     -2258.8        2023.26        -235.54       -235.54  
2020-02-03     -411.65              0        -411.65       -411.65  
2020-04-27    -1786.58        1402.99        -383.59       -383.59  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-127.79
The current status of the model is: Holding a position since 2020-04-27 00:00:00 

Processing portfolio for model: SMA_019_SlowMA_40_FastMA_05
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-12 00:00:00 at the price of 1827.87
SOLD QTY: -1 on 2019-05-09 00:00:00 at the price of 1729.43
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-06 00:00:00 at the price of 1799.2
BOUGHT QTY: 1 on 2019-08-14 00:00:00 at the price of 1908.56
SOLD QTY: -1 on 2019-10-03 00:00:00 at the price of 1936.55
BOUGHT QTY: 1 on 2019-10-17 00:00:00 at the price of 2033.0
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
SOLD QTY: -1 on 2020-07-01 00:00:00 at the price of 1606.05
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-04-12            1          1    1827.87                0         0   
2019-05-09           -1          0          0          1729.43    -98.44   
2019-06-14            1          1     1808.2                0         0   
2019-08-06           -1          0          0           1799.2        -9   
2019-08-14            1          1    1908.56                0         0   
2019-10-03           -1          0          0          1936.55     27.99   
2019-10-17            1          1       2033                0         0   
2019-11-08           -1          0          0             1941       -92   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-04-30            1          1    1514.53                0         0   
2020-07-01           -1          0          0          1606.05     91.52   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-05      -72.62              0         -72.62        -72.62  
2019-04-12    -1900.49        1833.07         -67.42        -67.42  
2019-05-09     -171.06              0        -171.06       -171.06  
2019-06-14    -1979.26         1775.5        -203.76       -203.76  
2019-08-06     -180.06              0        -180.06       -180.06  
2019-08-14    -2088.62        1891.19        -197.43       -197.43  
2019-10-03     -152.07              0        -152.07       -152.07  
2019-10-17    -2185.07        2028.53        -156.54       -156.54  
2019-11-08     -244.07              0        -244.07       -244.07  
2019-12-17    -2244.07        2001.87         -242.2        -242.2  
2020-01-28      -329.4              0         -329.4        -329.4  
2020-04-30    -1843.93        1480.57        -363.36       -363.36  
2020-07-01     -237.88              0        -237.88       -237.88  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-237.88
The current status of the model is: Waiting to enter since 2020-07-01 00:00:00 

Processing portfolio for model: SMA_020_SlowMA_40_FastMA_10
BOUGHT QTY: 1 on 2019-01-31 00:00:00 at the price of 1820.37
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-14 00:00:00 at the price of 1787.12
BOUGHT QTY: 1 on 2019-06-19 00:00:00 at the price of 1812.0
SOLD QTY: -1 on 2019-08-12 00:00:00 at the price of 1900.44
BOUGHT QTY: 1 on 2019-08-20 00:00:00 at the price of 1942.51
SOLD QTY: -1 on 2019-10-08 00:00:00 at the price of 1937.05
BOUGHT QTY: 1 on 2019-10-22 00:00:00 at the price of 2029.04
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-18 00:00:00 at the price of 2008.67
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-04-27 00:00:00 at the price of 1374.93
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-31            1          1    1820.37                0         0   
2019-03-08           -1          0          0          1708.04   -112.33   
2019-04-15            1          1       1834                0         0   
2019-05-14           -1          0          0          1787.12    -46.88   
2019-06-19            1          1       1812                0         0   
2019-08-12           -1          0          0          1900.44     88.44   
2019-08-20            1          1    1942.51                0         0   
2019-10-08           -1          0          0          1937.05     -5.46   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-18            1          1    2008.67                0         0   
2020-01-30           -1          0          0          1871.42   -137.25   
2020-04-27            1          1    1374.93                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-31    -1820.37        1832.81          12.44         12.44  
2019-03-08     -112.33              0        -112.33       -112.33  
2019-04-15    -1946.33        1846.23         -100.1        -100.1  
2019-05-14     -159.21              0        -159.21       -159.21  
2019-06-19    -1971.21        1842.06        -129.15       -129.15  
2019-08-12      -70.77              0         -70.77        -70.77  
2019-08-20    -2013.28         1934.4         -78.88        -78.88  
2019-10-08      -76.23              0         -76.23        -76.23  
2019-10-22    -2105.27        2023.05         -82.22        -82.22  
2019-11-11     -236.27              0        -236.27       -236.27  
2019-12-18    -2244.94        1991.51        -253.43       -253.43  
2020-01-30     -373.52              0        -373.52       -373.52  
2020-04-27    -1748.45        1402.99        -345.46       -345.46  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-89.66
The current status of the model is: Holding a position since 2020-04-27 00:00:00 

Processing portfolio for model: SMA_021_SlowMA_40_FastMA_15
BOUGHT QTY: 1 on 2019-02-04 00:00:00 at the price of 1840.39
SOLD QTY: -1 on 2019-03-12 00:00:00 at the price of 1709.72
BOUGHT QTY: 1 on 2019-04-17 00:00:00 at the price of 1848.63
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-08-19 00:00:00 at the price of 1944.87
BOUGHT QTY: 1 on 2019-08-22 00:00:00 at the price of 1962.45
SOLD QTY: -1 on 2019-10-11 00:00:00 at the price of 1984.3
BOUGHT QTY: 1 on 2019-10-28 00:00:00 at the price of 2053.02
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-04-28 00:00:00 at the price of 1434.2
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-04            1          1    1840.39                0         0   
2019-03-12           -1          0          0          1709.72   -130.67   
2019-04-17            1          1    1848.63                0         0   
2019-05-21           -1          0          0          1762.34    -86.29   
2019-06-24            1          1    1880.97                0         0   
2019-08-19           -1          0          0          1944.87      63.9   
2019-08-22            1          1    1962.45                0         0   
2019-10-11           -1          0          0           1984.3     21.85   
2019-10-28            1          1    2053.02                0         0   
2019-11-14           -1          0          0          1855.39   -197.63   
2019-12-20            1          1       2017                0         0   
2020-02-03           -1          0          0          1847.15   -169.85   
2020-04-28            1          1     1434.2                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-04    -1840.39        1860.99           20.6          20.6  
2019-03-12     -130.67              0        -130.67       -130.67  
2019-04-17     -1979.3        1839.79        -139.51       -139.51  
2019-05-21     -216.96              0        -216.96       -216.96  
2019-06-24    -2097.93        1870.81        -227.12       -227.12  
2019-08-19     -153.06              0        -153.06       -153.06  
2019-08-22    -2115.51        1952.47        -163.04       -163.04  
2019-10-11     -131.21              0        -131.21       -131.21  
2019-10-28    -2184.23        2057.05        -127.18       -127.18  
2019-11-14     -328.84              0        -328.84       -328.84  
2019-12-20    -2345.84        2023.26        -322.58       -322.58  
2020-02-03     -498.69              0        -498.69       -498.69  
2020-04-28    -1932.89        1439.32        -493.57       -493.57  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-274.10
The current status of the model is: Holding a position since 2020-04-28 00:00:00 

Processing portfolio for model: SMA_022_SlowMA_40_FastMA_20
BOUGHT QTY: 1 on 2019-02-06 00:00:00 at the price of 1895.94
SOLD QTY: -1 on 2019-03-15 00:00:00 at the price of 1751.79
BOUGHT QTY: 1 on 2019-04-18 00:00:00 at the price of 1847.64
SOLD QTY: -1 on 2019-05-23 00:00:00 at the price of 1746.95
BOUGHT QTY: 1 on 2019-06-26 00:00:00 at the price of 1848.3
SOLD QTY: -1 on 2019-08-28 00:00:00 at the price of 1911.8
BOUGHT QTY: 1 on 2019-08-29 00:00:00 at the price of 1966.43
SOLD QTY: -1 on 2019-10-17 00:00:00 at the price of 2033.0
BOUGHT QTY: 1 on 2019-11-01 00:00:00 at the price of 2023.62
SOLD QTY: -1 on 2019-11-18 00:00:00 at the price of 1847.04
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-04 00:00:00 at the price of 1857.06
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-06            1          1    1895.94                0         0   
2019-03-15           -1          0          0          1751.79   -144.15   
2019-04-18            1          1    1847.64                0         0   
2019-05-23           -1          0          0          1746.95   -100.69   
2019-06-26            1          1     1848.3                0         0   
2019-08-28           -1          0          0           1911.8      63.5   
2019-08-29            1          1    1966.43                0         0   
2019-10-17           -1          0          0             2033     66.57   
2019-11-01            1          1    2023.62                0         0   
2019-11-18           -1          0          0          1847.04   -176.58   
2019-12-24            1          1    2032.24                0         0   
2020-02-04           -1          0          0          1857.06   -175.18   
2020-04-30            1          1    1514.53                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-06    -1895.94        1906.93          10.99         10.99  
2019-03-15     -144.15              0        -144.15       -144.15  
2019-04-18    -1991.79        1844.31        -147.48       -147.48  
2019-05-23     -244.84              0        -244.84       -244.84  
2019-06-26    -2093.14        1830.22        -262.92       -262.92  
2019-08-28     -181.34              0        -181.34       -181.34  
2019-08-29    -2147.77        1957.14        -190.63       -190.63  
2019-10-17     -114.77              0        -114.77       -114.77  
2019-11-01    -2138.39        2032.02        -106.37       -106.37  
2019-11-18     -291.35              0        -291.35       -291.35  
2019-12-24    -2323.59           2044        -279.59       -279.59  
2020-02-04     -466.53              0        -466.53       -466.53  
2020-04-30    -1981.06        1480.57        -500.49       -500.49  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-322.27
The current status of the model is: Holding a position since 2020-04-30 00:00:00 

Processing portfolio for model: SMA_023_SlowMA_45_FastMA_05
BOUGHT QTY: 1 on 2019-01-28 00:00:00 at the price of 1787.62
SOLD QTY: -1 on 2019-03-05 00:00:00 at the price of 1715.0
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-20 00:00:00 at the price of 1769.73
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-07 00:00:00 at the price of 1758.4
BOUGHT QTY: 1 on 2019-08-13 00:00:00 at the price of 1907.67
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-16 00:00:00 at the price of 2016.8
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-04-30 00:00:00 at the price of 1514.53
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-04-15            1          1       1834                0         0   
2019-05-10           -1          0          0             1825        -9   
2019-05-17            1          1    1786.37                0         0   
2019-05-20           -1          0          0          1769.73    -16.64   
2019-06-14            1          1     1808.2                0         0   
2019-08-07           -1          0          0           1758.4     -49.8   
2019-08-13            1          1    1907.67                0         0   
2019-10-09           -1          0          0          1953.72     46.05   
2019-10-16            1          1     2016.8                0         0   
2019-11-08           -1          0          0             1941     -75.8   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-04-30            1          1    1514.53                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-28    -1787.62         1813.6          25.98         25.98  
2019-03-05      -72.62              0         -72.62        -72.62  
2019-04-15    -1906.62        1846.23         -60.39        -60.39  
2019-05-10      -81.62              0         -81.62        -81.62  
2019-05-17    -1867.99        1787.29          -80.7         -80.7  
2019-05-20      -98.26              0         -98.26        -98.26  
2019-06-14    -1906.46         1775.5        -130.96       -130.96  
2019-08-07     -148.06              0        -148.06       -148.06  
2019-08-13    -2055.73        1943.19        -112.54       -112.54  
2019-10-09     -102.01              0        -102.01       -102.01  
2019-10-16    -2118.81        2027.63         -91.18        -91.18  
2019-11-08     -177.81              0        -177.81       -177.81  
2019-12-17    -2177.81        2001.87        -175.94       -175.94  
2020-01-28     -263.14              0        -263.14       -263.14  
2020-04-30    -1777.67        1480.57         -297.1        -297.1  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-118.88
The current status of the model is: Holding a position since 2020-04-30 00:00:00 

Processing portfolio for model: SMA_024_SlowMA_45_FastMA_10
BOUGHT QTY: 1 on 2019-01-31 00:00:00 at the price of 1820.37
SOLD QTY: -1 on 2019-03-08 00:00:00 at the price of 1708.04
BOUGHT QTY: 1 on 2019-04-17 00:00:00 at the price of 1848.63
SOLD QTY: -1 on 2019-05-15 00:00:00 at the price of 1778.6
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-08-15 00:00:00 at the price of 1900.03
BOUGHT QTY: 1 on 2019-08-19 00:00:00 at the price of 1944.87
SOLD QTY: -1 on 2019-10-09 00:00:00 at the price of 1953.72
BOUGHT QTY: 1 on 2019-10-18 00:00:00 at the price of 2030.86
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-19 00:00:00 at the price of 1996.0
SOLD QTY: -1 on 2020-01-30 00:00:00 at the price of 1871.42
BOUGHT QTY: 1 on 2020-05-01 00:00:00 at the price of 1442.75
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-31            1          1    1820.37                0         0   
2019-03-08           -1          0          0          1708.04   -112.33   
2019-04-17            1          1    1848.63                0         0   
2019-05-15           -1          0          0           1778.6    -70.03   
2019-06-20            1          1    1862.07                0         0   
2019-08-15           -1          0          0          1900.03     37.96   
2019-08-19            1          1    1944.87                0         0   
2019-10-09           -1          0          0          1953.72      8.85   
2019-10-18            1          1    2030.86                0         0   
2019-11-11           -1          0          0             1869   -161.86   
2019-12-19            1          1       1996                0         0   
2020-01-30           -1          0          0          1871.42   -124.58   
2020-05-01            1          1    1442.75                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-31    -1820.37        1832.81          12.44         12.44  
2019-03-08     -112.33              0        -112.33       -112.33  
2019-04-17    -1960.96        1839.79        -121.17       -121.17  
2019-05-15     -182.36              0        -182.36       -182.36  
2019-06-20    -2044.43        1861.31        -183.12       -183.12  
2019-08-15      -144.4              0         -144.4        -144.4  
2019-08-19    -2089.27        1943.73        -145.54       -145.54  
2019-10-09     -135.55              0        -135.55       -135.55  
2019-10-18    -2166.41        2013.53        -152.88       -152.88  
2019-11-11     -297.41              0        -297.41       -297.41  
2019-12-19    -2293.41        2003.12        -290.29       -290.29  
2020-01-30     -421.99              0        -421.99       -421.99  
2020-05-01    -1864.74        1448.79        -415.95       -415.95  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-205.95
The current status of the model is: Holding a position since 2020-05-01 00:00:00 

Processing portfolio for model: SMA_025_SlowMA_45_FastMA_15
BOUGHT QTY: 1 on 2019-02-05 00:00:00 at the price of 1887.53
SOLD QTY: -1 on 2019-03-13 00:00:00 at the price of 1740.44
BOUGHT QTY: 1 on 2019-04-22 00:00:00 at the price of 1833.93
SOLD QTY: -1 on 2019-05-21 00:00:00 at the price of 1762.34
BOUGHT QTY: 1 on 2019-06-24 00:00:00 at the price of 1880.97
SOLD QTY: -1 on 2019-10-14 00:00:00 at the price of 1964.52
BOUGHT QTY: 1 on 2019-10-24 00:00:00 at the price of 2035.0
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-03 00:00:00 at the price of 1847.15
BOUGHT QTY: 1 on 2020-05-01 00:00:00 at the price of 1442.75
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-05            1          1    1887.53                0         0   
2019-03-13           -1          0          0          1740.44   -147.09   
2019-04-22            1          1    1833.93                0         0   
2019-05-21           -1          0          0          1762.34    -71.59   
2019-06-24            1          1    1880.97                0         0   
2019-10-14           -1          0          0          1964.52     83.55   
2019-10-24            1          1       2035                0         0   
2019-11-13           -1          0          0          1855.59   -179.41   
2019-12-24            1          1    2032.24                0         0   
2020-02-03           -1          0          0          1847.15   -185.09   
2020-05-01            1          1    1442.75                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-05    -1887.53        1902.26          14.73         14.73  
2019-03-13     -147.09              0        -147.09       -147.09  
2019-04-22    -1981.02        1844.17        -136.85       -136.85  
2019-05-21     -218.68              0        -218.68       -218.68  
2019-06-24    -2099.65        1870.81        -228.84       -228.84  
2019-10-14     -135.13              0        -135.13       -135.13  
2019-10-24    -2170.13        2043.75        -126.38       -126.38  
2019-11-13     -314.54              0        -314.54       -314.54  
2019-12-24    -2346.78           2044        -302.78       -302.78  
2020-02-03     -499.63              0        -499.63       -499.63  
2020-05-01    -1942.38        1448.79        -493.59       -493.59  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-283.59
The current status of the model is: Holding a position since 2020-05-01 00:00:00 

Processing portfolio for model: SMA_026_SlowMA_45_FastMA_20
BOUGHT QTY: 1 on 2019-02-07 00:00:00 at the price of 1892.1
SOLD QTY: -1 on 2019-03-19 00:00:00 at the price of 1751.05
BOUGHT QTY: 1 on 2019-04-24 00:00:00 at the price of 1887.14
SOLD QTY: -1 on 2019-05-24 00:00:00 at the price of 1731.52
BOUGHT QTY: 1 on 2019-06-28 00:00:00 at the price of 1852.58
SOLD QTY: -1 on 2019-10-21 00:00:00 at the price of 2022.68
BOUGHT QTY: 1 on 2019-10-29 00:00:00 at the price of 2054.14
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-26 00:00:00 at the price of 2049.34
SOLD QTY: -1 on 2020-02-06 00:00:00 at the price of 1958.9
BOUGHT QTY: 1 on 2020-05-05 00:00:00 at the price of 1443.25
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-07            1          1     1892.1                0         0   
2019-03-19           -1          0          0          1751.05   -141.05   
2019-04-24            1          1    1887.14                0         0   
2019-05-24           -1          0          0          1731.52   -155.62   
2019-06-28            1          1    1852.58                0         0   
2019-10-21           -1          0          0          2022.68     170.1   
2019-10-29            1          1    2054.14                0         0   
2019-11-14           -1          0          0          1855.39   -198.75   
2019-12-26            1          1    2049.34                0         0   
2020-02-06           -1          0          0           1958.9    -90.44   
2020-05-05            1          1    1443.25                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-07     -1892.1        1877.06         -15.04        -15.04  
2019-03-19     -141.05              0        -141.05       -141.05  
2019-04-24    -2028.19        1867.28        -160.91       -160.91  
2019-05-24     -296.67              0        -296.67       -296.67  
2019-06-28    -2149.25        1874.71        -274.54       -274.54  
2019-10-21     -126.57              0        -126.57       -126.57  
2019-10-29    -2180.71         2042.8        -137.91       -137.91  
2019-11-14     -325.32              0        -325.32       -325.32  
2019-12-26    -2374.66        2064.32        -310.34       -310.34  
2020-02-06     -415.76              0        -415.76       -415.76  
2020-05-05    -1859.01         1393.2        -465.81       -465.81  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-200.22
The current status of the model is: Holding a position since 2020-05-05 00:00:00 

Processing portfolio for model: SMA_027_SlowMA_50_FastMA_05
BOUGHT QTY: 1 on 2019-01-29 00:00:00 at the price of 1816.62
SOLD QTY: -1 on 2019-03-06 00:00:00 at the price of 1748.37
BOUGHT QTY: 1 on 2019-04-15 00:00:00 at the price of 1834.0
SOLD QTY: -1 on 2019-05-10 00:00:00 at the price of 1825.0
BOUGHT QTY: 1 on 2019-05-17 00:00:00 at the price of 1786.37
SOLD QTY: -1 on 2019-05-20 00:00:00 at the price of 1769.73
BOUGHT QTY: 1 on 2019-06-14 00:00:00 at the price of 1808.2
SOLD QTY: -1 on 2019-08-08 00:00:00 at the price of 1900.0
BOUGHT QTY: 1 on 2019-08-12 00:00:00 at the price of 1900.44
SOLD QTY: -1 on 2019-10-11 00:00:00 at the price of 1984.3
BOUGHT QTY: 1 on 2019-10-15 00:00:00 at the price of 1992.21
SOLD QTY: -1 on 2019-11-08 00:00:00 at the price of 1941.0
BOUGHT QTY: 1 on 2019-12-17 00:00:00 at the price of 2000.0
SOLD QTY: -1 on 2020-01-28 00:00:00 at the price of 1914.67
BOUGHT QTY: 1 on 2020-05-04 00:00:00 at the price of 1415.73
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-29            1          1    1816.62                0         0   
2019-03-06           -1          0          0          1748.37    -68.25   
2019-04-15            1          1       1834                0         0   
2019-05-10           -1          0          0             1825        -9   
2019-05-17            1          1    1786.37                0         0   
2019-05-20           -1          0          0          1769.73    -16.64   
2019-06-14            1          1     1808.2                0         0   
2019-08-08           -1          0          0             1900      91.8   
2019-08-12            1          1    1900.44                0         0   
2019-10-11           -1          0          0           1984.3     83.86   
2019-10-15            1          1    1992.21                0         0   
2019-11-08           -1          0          0             1941    -51.21   
2019-12-17            1          1       2000                0         0   
2020-01-28           -1          0          0          1914.67    -85.33   
2020-05-04            1          1    1415.73                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-29    -1816.62         1808.8          -7.82         -7.82  
2019-03-06      -68.25              0         -68.25        -68.25  
2019-04-15    -1902.25        1846.23         -56.02        -56.02  
2019-05-10      -77.25              0         -77.25        -77.25  
2019-05-17    -1863.62        1787.29         -76.33        -76.33  
2019-05-20      -93.89              0         -93.89        -93.89  
2019-06-14    -1902.09         1775.5        -126.59       -126.59  
2019-08-08       -2.09              0          -2.09         -2.09  
2019-08-12    -1902.53        1916.89          14.36         14.36  
2019-10-11       81.77              0          81.77         81.77  
2019-10-15    -1910.44        2016.39         105.95        105.95  
2019-11-08       30.56              0          30.56         30.56  
2019-12-17    -1969.44        2001.87          32.43         32.43  
2020-01-28      -54.77              0         -54.77        -54.77  
2020-05-04     -1470.5         1413.3          -57.2         -57.2  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $188.29
The current status of the model is: Holding a position since 2020-05-04 00:00:00 

Processing portfolio for model: SMA_028_SlowMA_50_FastMA_10
BOUGHT QTY: 1 on 2019-02-01 00:00:00 at the price of 1824.05
SOLD QTY: -1 on 2019-03-11 00:00:00 at the price of 1721.69
BOUGHT QTY: 1 on 2019-04-18 00:00:00 at the price of 1847.64
SOLD QTY: -1 on 2019-05-16 00:00:00 at the price of 1790.0
BOUGHT QTY: 1 on 2019-06-20 00:00:00 at the price of 1862.07
SOLD QTY: -1 on 2019-11-11 00:00:00 at the price of 1869.0
BOUGHT QTY: 1 on 2019-12-20 00:00:00 at the price of 2017.0
SOLD QTY: -1 on 2020-01-31 00:00:00 at the price of 1865.93
BOUGHT QTY: 1 on 2020-05-07 00:00:00 at the price of 1392.26
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-01            1          1    1824.05                0         0   
2019-03-11           -1          0          0          1721.69   -102.36   
2019-04-18            1          1    1847.64                0         0   
2019-05-16           -1          0          0             1790    -57.64   
2019-06-20            1          1    1862.07                0         0   
2019-11-11           -1          0          0             1869      6.93   
2019-12-20            1          1       2017                0         0   
2020-01-31           -1          0          0          1865.93   -151.07   
2020-05-07            1          1    1392.26                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-01    -1824.05        1836.96          12.91         12.91  
2019-03-11     -102.36              0        -102.36       -102.36  
2019-04-18       -1950        1844.31        -105.69       -105.69  
2019-05-16        -160              0           -160          -160  
2019-06-20    -2022.07        1861.31        -160.76       -160.76  
2019-11-11     -153.07              0        -153.07       -153.07  
2019-12-20    -2170.07        2023.26        -146.81       -146.81  
2020-01-31     -304.14              0        -304.14       -304.14  
2020-05-07     -1696.4        1443.91        -252.49       -252.49  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-37.61
The current status of the model is: Holding a position since 2020-05-07 00:00:00 

Processing portfolio for model: SMA_029_SlowMA_50_FastMA_15
BOUGHT QTY: 1 on 2019-02-05 00:00:00 at the price of 1887.53
SOLD QTY: -1 on 2019-03-14 00:00:00 at the price of 1768.83
BOUGHT QTY: 1 on 2019-04-23 00:00:00 at the price of 1849.23
SOLD QTY: -1 on 2019-05-22 00:00:00 at the price of 1757.35
BOUGHT QTY: 1 on 2019-06-25 00:00:00 at the price of 1880.83
SOLD QTY: -1 on 2019-10-17 00:00:00 at the price of 2033.0
BOUGHT QTY: 1 on 2019-10-21 00:00:00 at the price of 2022.68
SOLD QTY: -1 on 2019-11-13 00:00:00 at the price of 1855.59
BOUGHT QTY: 1 on 2019-12-24 00:00:00 at the price of 2032.24
SOLD QTY: -1 on 2020-02-04 00:00:00 at the price of 1857.06
BOUGHT QTY: 1 on 2020-05-08 00:00:00 at the price of 1416.69
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-05            1          1    1887.53                0         0   
2019-03-14           -1          0          0          1768.83    -118.7   
2019-04-23            1          1    1849.23                0         0   
2019-05-22           -1          0          0          1757.35    -91.88   
2019-06-25            1          1    1880.83                0         0   
2019-10-17           -1          0          0             2033    152.17   
2019-10-21            1          1    2022.68                0         0   
2019-11-13           -1          0          0          1855.59   -167.09   
2019-12-24            1          1    2032.24                0         0   
2020-02-04           -1          0          0          1857.06   -175.18   
2020-05-08            1          1    1416.69                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-05    -1887.53        1902.26          14.73         14.73  
2019-03-14      -118.7              0         -118.7        -118.7  
2019-04-23    -1967.93        1887.73          -80.2         -80.2  
2019-05-22     -210.58              0        -210.58       -210.58  
2019-06-25    -2091.41        1845.47        -245.94       -245.94  
2019-10-17      -58.41              0         -58.41        -58.41  
2019-10-21    -2081.09        2022.24         -58.85        -58.85  
2019-11-13      -225.5              0         -225.5        -225.5  
2019-12-24    -2257.74           2044        -213.74       -213.74  
2020-02-04     -400.68              0        -400.68       -400.68  
2020-05-08    -1817.37        1430.83        -386.54       -386.54  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-158.58
The current status of the model is: Holding a position since 2020-05-08 00:00:00 

Processing portfolio for model: SMA_030_SlowMA_50_FastMA_20
BOUGHT QTY: 1 on 2019-02-08 00:00:00 at the price of 1892.37
SOLD QTY: -1 on 2019-03-20 00:00:00 at the price of 1766.78
BOUGHT QTY: 1 on 2019-04-25 00:00:00 at the price of 1870.65
SOLD QTY: -1 on 2019-05-28 00:00:00 at the price of 1707.59
BOUGHT QTY: 1 on 2019-06-28 00:00:00 at the price of 1852.58
SOLD QTY: -1 on 2019-11-14 00:00:00 at the price of 1855.39
BOUGHT QTY: 1 on 2019-12-27 00:00:00 at the price of 2063.0
SOLD QTY: -1 on 2020-02-07 00:00:00 at the price of 1950.23
BOUGHT QTY: 1 on 2020-05-08 00:00:00 at the price of 1416.69
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-02-08            1          1    1892.37                0         0   
2019-03-20           -1          0          0          1766.78   -125.59   
2019-04-25            1          1    1870.65                0         0   
2019-05-28           -1          0          0          1707.59   -163.06   
2019-06-28            1          1    1852.58                0         0   
2019-11-14           -1          0          0          1855.39      2.81   
2019-12-27            1          1       2063                0         0   
2020-02-07           -1          0          0          1950.23   -112.77   
2020-05-08            1          1    1416.69                0         0   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-02-08    -1892.37        1871.09         -21.28        -21.28  
2019-03-20     -125.59              0        -125.59       -125.59  
2019-04-25    -1996.24        1866.26        -129.98       -129.98  
2019-05-28     -288.65              0        -288.65       -288.65  
2019-06-28    -2141.23        1874.71        -266.52       -266.52  
2019-11-14     -285.84              0        -285.84       -285.84  
2019-12-27    -2348.84        2072.54         -276.3        -276.3  
2020-02-07     -398.61              0        -398.61       -398.61  
2020-05-08     -1815.3        1430.83        -384.47       -384.47  
Accumulated profit/loss for one share of stock with initial capital of $0 at the end of modeling period: $-156.51
The current status of the model is: Holding a position since 2020-05-08 00:00:00 

In [18]:
# Display the model performance summary
performance_summary.sort_values(by=['return_value'], inplace=True, ascending=False)
print(performance_summary)
                     model_name  return_value return_percent
5   SMA_006_SlowMA_20_FastMA_15        330.55           None
0   SMA_001_SlowMA_10_FastMA_05        211.82           None
26  SMA_027_SlowMA_50_FastMA_05        188.29           None
1   SMA_002_SlowMA_15_FastMA_05        120.87           None
15  SMA_016_SlowMA_35_FastMA_10         22.51           None
27  SMA_028_SlowMA_50_FastMA_10        -37.61           None
11  SMA_012_SlowMA_30_FastMA_10        -53.20           None
3   SMA_004_SlowMA_20_FastMA_05        -71.25           None
19  SMA_020_SlowMA_40_FastMA_10        -89.66           None
8   SMA_009_SlowMA_25_FastMA_15       -108.07           None
12  SMA_013_SlowMA_30_FastMA_15       -110.38           None
14  SMA_015_SlowMA_35_FastMA_05       -113.33           None
22  SMA_023_SlowMA_45_FastMA_05       -118.88           None
17  SMA_018_SlowMA_35_FastMA_20       -127.79           None
13  SMA_014_SlowMA_30_FastMA_20       -130.30           None
16  SMA_017_SlowMA_35_FastMA_15       -135.73           None
6   SMA_007_SlowMA_25_FastMA_05       -146.76           None
29  SMA_030_SlowMA_50_FastMA_20       -156.51           None
28  SMA_029_SlowMA_50_FastMA_15       -158.58           None
25  SMA_026_SlowMA_45_FastMA_20       -200.22           None
23  SMA_024_SlowMA_45_FastMA_10       -205.95           None
2   SMA_003_SlowMA_15_FastMA_10       -231.24           None
10  SMA_011_SlowMA_30_FastMA_05       -233.12           None
18  SMA_019_SlowMA_40_FastMA_05       -237.88           None
20  SMA_021_SlowMA_40_FastMA_15       -274.10           None
24  SMA_025_SlowMA_45_FastMA_15       -283.59           None
21  SMA_022_SlowMA_40_FastMA_20       -322.27           None
4   SMA_005_SlowMA_20_FastMA_10       -351.69           None
9   SMA_010_SlowMA_25_FastMA_20       -418.18           None
7   SMA_008_SlowMA_25_FastMA_10       -614.19           None
In [19]:
# Display the transactions from the top model
top_model = performance_summary.iloc[0]['model_name']
print('The transactions from the top model %s:' % (top_model))
print(portfolio_collection[top_model][portfolio_collection[top_model].trade_action != 0])
The transactions from the top model SMA_006_SlowMA_20_FastMA_15:
           trade_action qty_onhand cost_basis sold_transaction gain_loss  \
date                                                                       
2019-01-17            1          1    1681.73                0         0   
2019-01-25           -1          0          0          1811.99    130.26   
2019-01-28            1          1    1787.62                0         0   
2019-03-05           -1          0          0             1715    -72.62   
2019-03-28            1          1    1759.99                0         0   
2019-05-10           -1          0          0             1825     65.01   
2019-06-18            1          1    1808.38                0         0   
2019-07-29           -1          0          0          1958.78     150.4   
2019-08-01            1          1    1885.47                0         0   
2019-08-15           -1          0          0          1900.03     14.56   
2019-08-26            1          1    1918.24                0         0   
2019-10-04           -1          0          0          1970.64      52.4   
2019-10-22            1          1    2029.04                0         0   
2019-11-11           -1          0          0             1869   -160.04   
2019-12-06            1          1    1923.27                0         0   
2020-01-24           -1          0          0             1998     74.73   
2020-02-24            1          1    1830.93                0         0   
2020-03-02           -1          0          0          1709.75   -121.18   
2020-04-13            1          1    1413.19                0         0   
2020-05-07           -1          0          0          1392.26    -20.93   
2020-05-13            1          1    1379.34                0         0   
2020-06-26           -1          0          0           1597.3    217.96   

           cash_onhand position_value total_position accumu_return  
date                                                                
2019-01-17    -1681.73        1724.51          42.78         42.78  
2019-01-25      130.26              0         130.26        130.26  
2019-01-28    -1657.36         1813.6         156.24        156.24  
2019-03-05       57.64              0          57.64         57.64  
2019-03-28    -1702.35        1728.89          26.54         26.54  
2019-05-10      122.65              0         122.65        122.65  
2019-06-18    -1685.73        1808.99         123.26        123.26  
2019-07-29      273.05              0         273.05        273.05  
2019-08-01    -1612.42        1879.86         267.44        267.44  
2019-08-15      287.61              0         287.61        287.61  
2019-08-26    -1630.63        1916.81         286.18        286.18  
2019-10-04      340.01              0         340.01        340.01  
2019-10-22    -1689.03        2023.05         334.02        334.02  
2019-11-11      179.97              0         179.97        179.97  
2019-12-06     -1743.3        1930.27         186.97        186.97  
2020-01-24       254.7              0          254.7         254.7  
2020-02-24    -1576.23        1792.54         216.31        216.31  
2020-03-02      133.52              0         133.52        133.52  
2020-04-13    -1279.67        1421.01         141.34        141.34  
2020-05-07      112.59              0         112.59        112.59  
2020-05-13    -1266.75        1366.07          99.32         99.32  
2020-06-26      330.55              0         330.55        330.55  
In [20]:
# Display the entry and exit signals for the top model
print('The trading signal changes from the top model %s:' % (top_model))
print(model_collection[top_model][model_collection[top_model].signal_change != 0])
The trading signal changes from the top model SMA_006_SlowMA_20_FastMA_15:
            open_price  close_price      fast_ma    slow_ma  ma_change  \
date                                                                     
2019-01-16     1693.42      1680.57  1694.992000  1694.3165   0.675500   
2019-01-24     1748.98      1795.67  1705.174000  1707.9305  -2.756500   
2019-01-25     1811.99      1802.20  1714.446000  1712.8780   1.568000   
2019-03-04     1723.66      1707.82  1868.357333  1872.1845  -3.827167   
2019-03-27     1768.98      1752.11  1747.173333  1741.2045   5.968833   
2019-05-09     1729.43      1736.03  1829.588000  1831.1600  -1.572000   
2019-06-17     1776.00      1781.41  1743.114667  1742.0785   1.036167   
2019-07-26     1940.00      1966.85  1892.826667  1895.8960  -3.069333   
2019-07-31     1906.33      1886.61  1899.475333  1897.9775   1.497833   
2019-08-14     1908.56      1891.19  1889.888000  1891.4760  -1.588000   
2019-08-23     1942.98      1898.67  1901.235333  1898.3610   2.874333   
2019-10-03     1936.55      1961.45  2008.174000  2009.6410  -1.467000   
2019-10-21     2022.68      2022.24  1982.290667  1980.1920   2.098667   
2019-11-08     1941.00      1879.19  2012.114000  2012.8270  -0.713000   
2019-12-05     1929.00      1904.22  1879.067333  1877.3050   1.762333   
2020-01-23     1986.24      1993.20  2053.346000  2054.4325  -1.086500   
2020-02-21     1965.00      1928.72  1926.364667  1922.5405   3.824167   
2020-02-28     1643.64      1695.66  1867.601333  1872.4150  -4.813667   
2020-04-09     1424.76      1420.64  1303.850000  1303.1120   0.738000   
2020-05-06     1397.46      1378.91  1412.500000  1413.7620  -1.262000   
2020-05-12     1401.09      1385.92  1415.136000  1414.1885   0.947500   
2020-06-25     1585.81      1615.39  1675.424667  1678.2565  -2.831833   

            trade_signal  signal_change  entry_exit  
date                                                 
2019-01-16           1.0            1.0         0.0  
2019-01-24           0.0           -1.0         0.0  
2019-01-25           1.0            1.0        -1.0  
2019-03-04           0.0           -1.0         0.0  
2019-03-27           1.0            1.0         0.0  
2019-05-09           0.0           -1.0         0.0  
2019-06-17           1.0            1.0         0.0  
2019-07-26           0.0           -1.0         0.0  
2019-07-31           1.0            1.0         0.0  
2019-08-14           0.0           -1.0         0.0  
2019-08-23           1.0            1.0         0.0  
2019-10-03           0.0           -1.0         0.0  
2019-10-21           1.0            1.0         0.0  
2019-11-08           0.0           -1.0         0.0  
2019-12-05           1.0            1.0         0.0  
2020-01-23           0.0           -1.0         0.0  
2020-02-21           1.0            1.0         0.0  
2020-02-28           0.0           -1.0         0.0  
2020-04-09           1.0            1.0         0.0  
2020-05-06           0.0           -1.0         0.0  
2020-05-12           1.0            1.0         0.0  
2020-06-25           0.0           -1.0         0.0  
In [21]:
graph_data = model_collection[top_model].copy()
title_string = "Simple Moving Average Crossover Model for " + top_model
fig = plt.figure(figsize=(16,9))
ylabel = stock_symbol + ' price in $'
ax1 = fig.add_subplot(111, ylabel=ylabel, title=title_string)
graph_data['fast_ma'].plot(ax=ax1, color='b', lw=2.)
graph_data['slow_ma'].plot(ax=ax1, color='r', lw=2.)
graph_data['close_price'].plot(ax=ax1, color='g')
ax1.plot(graph_data.loc[graph_data.entry_exit == 1].index, graph_data.close_price[graph_data.entry_exit == 1], '^', markersize=7, color='k',label='buy')
ax1.plot(graph_data.loc[graph_data.entry_exit == -1].index, graph_data.close_price[graph_data.entry_exit == -1], 'v', markersize=7, color='k',label='sell')
plt.legend(loc='upper left')
plt.show()

Task 5. Evaluate Performance

In [22]:
best_model = ''
best_return = 0
for key in portfolio_collection:
    if portfolio_collection[key]['accumu_return'][-1] > best_return:
        best_model = key
        best_return = portfolio_collection[best_model]['accumu_return'][-1]
print('The best model found is:', best_model)
print('The best profit/loss for the investing period is: $%.2f' % (best_return))
if initial_capital != 0:
    print('The best return percentage for initial capital is: %.2f%%' % (best_return / initial_capital * 100))
The best model found is: SMA_006_SlowMA_20_FastMA_15
The best profit/loss for the investing period is: $330.55
In [23]:
worst_model = None
worst_return = 0
for key in portfolio_collection:
    if portfolio_collection[key]['accumu_return'][-1] < worst_return:
        worst_model = key
        worst_return = portfolio_collection[worst_model]['accumu_return'][-1]
print('The worst model found is:', worst_model)
print('The worst profit/loss for the investing period is: $%.2f' % (worst_return))
if initial_capital != 0:
    print('The worst return percentage for the initial capital is: %.2f%%' % (worst_return / initial_capital * 100))
The worst model found is: SMA_008_SlowMA_25_FastMA_10
The worst profit/loss for the investing period is: $-614.19
In [24]:
# Calculate the stock's performance for a long-only model
model_template = model_template[model_start_date:model_end_date]
print('The performance of the long-only model from day one is: $%.2f' %(model_template.iloc[-1]['close_price'] - model_template.iloc[0]['open_price']))
The performance of the long-only model from day one is: $-32.46
In [25]:
print ('Total time for the script:',(datetime.now() - startTimeScript))
Total time for the script: 0:01:42.511341